Avoid exceptions due to folder and file not found

1) Use function to return path to temp transcode path which has benefit of creating temp folder if not exists, thereby avoiding the exception when GetFilePaths is used.
2) Check json files exists before attempting to read from it.  Avoids having to mask FileNotFound exceptions when debugging.
This commit is contained in:
PloughPuff 2019-02-20 13:29:34 +00:00
parent 99bed9a9c3
commit 73c1cdb32a
2 changed files with 7 additions and 4 deletions

View File

@ -43,13 +43,15 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{ {
var jsonFile = path + ".json"; var jsonFile = path + ".json";
if (!File.Exists(jsonFile))
{
return new List<T>();
}
try try
{ {
return _jsonSerializer.DeserializeFromFile<List<T>>(jsonFile) ?? new List<T>(); return _jsonSerializer.DeserializeFromFile<List<T>>(jsonFile) ?? new List<T>();
} }
catch (FileNotFoundException)
{
}
catch (IOException) catch (IOException)
{ {
} }
@ -57,6 +59,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{ {
Logger.LogError(ex, "Error deserializing {jsonFile}", jsonFile); Logger.LogError(ex, "Error deserializing {jsonFile}", jsonFile);
} }
return new List<T>(); return new List<T>();
} }

View File

@ -170,7 +170,7 @@ namespace MediaBrowser.Api
/// </summary> /// </summary>
private void DeleteEncodedMediaCache() private void DeleteEncodedMediaCache()
{ {
var path = _config.ApplicationPaths.TranscodingTempPath; var path = _config.ApplicationPaths.GetTranscodingTempPath();
foreach (var file in _fileSystem.GetFilePaths(path, true)) foreach (var file in _fileSystem.GetFilePaths(path, true))
{ {