From b487794860d9d59d6b7f09594d248f58320a70b9 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Fri, 25 Oct 2013 16:58:31 -0400 Subject: [PATCH] fixed virtual episode image saving --- MediaBrowser.Controller/Entities/BaseItem.cs | 3 ++- .../TV/SeriesPostScanTask.cs | 2 +- .../Providers/ImageSaver.cs | 24 ++++++------------- 3 files changed, 10 insertions(+), 19 deletions(-) diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 77cc541675..67221a9ac9 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -1530,7 +1530,8 @@ namespace MediaBrowser.Controller.Entities } // Refresh metadata - return RefreshMetadata(CancellationToken.None, forceSave: true); + // Need to disable slow providers or the image might get re-downloaded + return RefreshMetadata(CancellationToken.None, forceSave: true, allowSlowProviders: false); } /// diff --git a/MediaBrowser.Providers/TV/SeriesPostScanTask.cs b/MediaBrowser.Providers/TV/SeriesPostScanTask.cs index 2e9910aebd..6e99edb126 100644 --- a/MediaBrowser.Providers/TV/SeriesPostScanTask.cs +++ b/MediaBrowser.Providers/TV/SeriesPostScanTask.cs @@ -211,7 +211,7 @@ namespace MediaBrowser.Providers.TV else if (airDate.Value > now) { // tvdb has a lot of nearly blank episodes - _logger.Info("Creating virtual future episode {0} {1}x{2}", series.Name, tuple.Item1, tuple.Item2); + _logger.Info("Creating virtual unaired episode {0} {1}x{2}", series.Name, tuple.Item1, tuple.Item2); await AddEpisode(series, tuple.Item1, tuple.Item2, cancellationToken).ConfigureAwait(false); diff --git a/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs b/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs index a967c535e8..3bdef9226e 100644 --- a/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs +++ b/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs @@ -67,30 +67,20 @@ namespace MediaBrowser.Server.Implementations.Providers throw new ArgumentNullException("mimeType"); } - var saveLocally = _config.Configuration.SaveLocalMeta; + var saveLocally = _config.Configuration.SaveLocalMeta || item is IItemByName || item is User; - if (item is IItemByName) - { - saveLocally = true; - } - else if (item is User) - { - saveLocally = true; - } - else if (item is Audio || item.Parent == null || string.IsNullOrEmpty(item.MetaLocation)) + if (item is Audio || item.Parent == null) { saveLocally = false; } - if (type != ImageType.Primary) + if (type != ImageType.Primary && item is Episode) { - if (item is Episode) - { - saveLocally = false; - } + saveLocally = false; } - if (item.LocationType == LocationType.Remote || item.LocationType == LocationType.Virtual) + var locationType = item.LocationType; + if (locationType == LocationType.Remote || locationType == LocationType.Virtual) { saveLocally = false; } @@ -373,7 +363,7 @@ namespace MediaBrowser.Server.Implementations.Providers path = GetSavePathForItemInMixedFolder(item, type, filename, extension); } - if (string.IsNullOrEmpty(path) && !string.IsNullOrEmpty(item.MetaLocation)) + if (string.IsNullOrEmpty(path)) { path = Path.Combine(item.MetaLocation, filename + extension); }