From 2e9a3d45c2a03f930856d038867a7caff01f208f Mon Sep 17 00:00:00 2001 From: Claus Vium Date: Sun, 24 Feb 2019 16:16:53 +0100 Subject: [PATCH] Fix slow local image validation (#990) * Check for local image directory existence to avoid tons of exceptions --- MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs | 7 +++++++ MediaBrowser.Providers/Manager/MetadataService.cs | 5 +---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs index 1a7654bfda..7c330ad862 100644 --- a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs +++ b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Globalization; +using System.IO; using System.Linq; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -65,6 +66,12 @@ namespace MediaBrowser.LocalMetadata.Images var path = item.ContainingFolderPath; + // Exit if the cache dir does not exist, alternative solution is to create it, but that's a lot of empty dirs... + if (!Directory.Exists(path)) + { + return Array.Empty(); + } + if (includeDirectories) { return directoryService.GetFileSystemEntries(path) diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index 77028e526a..f0716f2017 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -92,10 +92,7 @@ namespace MediaBrowser.Providers.Manager catch (Exception ex) { localImagesFailed = true; - if (!(item is IItemByName)) - { - Logger.LogError(ex, "Error validating images for {0}", item.Path ?? item.Name ?? "Unknown name"); - } + Logger.LogError(ex, "Error validating images for {0}", item.Path ?? item.Name ?? "Unknown name"); } var metadataResult = new MetadataResult