From 73c1cdb32ad8c0adf5e48477294dbee0f9240e8d Mon Sep 17 00:00:00 2001 From: PloughPuff Date: Wed, 20 Feb 2019 13:29:34 +0000 Subject: [PATCH] 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. --- .../LiveTv/EmbyTV/ItemDataProvider.cs | 9 ++++++--- MediaBrowser.Api/ApiEntryPoint.cs | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs index b825ea3b0b..a2ac60b319 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs @@ -43,12 +43,14 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var jsonFile = path + ".json"; - try + if (!File.Exists(jsonFile)) { - return _jsonSerializer.DeserializeFromFile>(jsonFile) ?? new List(); + return new List(); } - catch (FileNotFoundException) + + try { + return _jsonSerializer.DeserializeFromFile>(jsonFile) ?? new List(); } catch (IOException) { @@ -57,6 +59,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { Logger.LogError(ex, "Error deserializing {jsonFile}", jsonFile); } + return new List(); } diff --git a/MediaBrowser.Api/ApiEntryPoint.cs b/MediaBrowser.Api/ApiEntryPoint.cs index 8dbc26356d..ceff6b02e5 100644 --- a/MediaBrowser.Api/ApiEntryPoint.cs +++ b/MediaBrowser.Api/ApiEntryPoint.cs @@ -170,7 +170,7 @@ namespace MediaBrowser.Api /// private void DeleteEncodedMediaCache() { - var path = _config.ApplicationPaths.TranscodingTempPath; + var path = _config.ApplicationPaths.GetTranscodingTempPath(); foreach (var file in _fileSystem.GetFilePaths(path, true)) {