From 466d00b0214ba80421e53473b8cb5f38278adda1 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Mon, 20 May 2013 13:14:15 -0400 Subject: [PATCH] make sure series and episode providers are checking for existence of images --- .../Providers/TV/RemoteEpisodeProvider.cs | 23 +++++++++++-------- .../Providers/TV/RemoteSeriesProvider.cs | 2 +- .../Library/CoreResolutionIgnoreRule.cs | 6 ++--- .../Library/Resolvers/LocalTrailerResolver.cs | 2 +- 4 files changed, 18 insertions(+), 15 deletions(-) diff --git a/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs index a820d4bb10..f5dae305f9 100644 --- a/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs +++ b/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs @@ -215,18 +215,21 @@ namespace MediaBrowser.Controller.Providers.TV if (doc.HasChildNodes) { - var p = doc.SafeGetString("//filename"); - if (p != null) + if (!episode.HasImage(ImageType.Primary)) { - if (!Directory.Exists(episode.MetaLocation)) Directory.CreateDirectory(episode.MetaLocation); + var p = doc.SafeGetString("//filename"); + if (p != null) + { + if (!Directory.Exists(episode.MetaLocation)) Directory.CreateDirectory(episode.MetaLocation); - try - { - episode.PrimaryImagePath = await _providerManager.DownloadAndSaveImage(episode, TVUtils.BannerUrl + p, Path.GetFileName(p), ConfigurationManager.Configuration.SaveLocalMeta, RemoteSeriesProvider.Current.TvDbResourcePool, cancellationToken); - } - catch (HttpException) - { - status = ProviderRefreshStatus.CompletedWithErrors; + try + { + episode.PrimaryImagePath = await _providerManager.DownloadAndSaveImage(episode, TVUtils.BannerUrl + p, Path.GetFileName(p), ConfigurationManager.Configuration.SaveLocalMeta, RemoteSeriesProvider.Current.TvDbResourcePool, cancellationToken); + } + catch (HttpException) + { + status = ProviderRefreshStatus.CompletedWithErrors; + } } } diff --git a/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs index 1e126de143..a30cf69dad 100644 --- a/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs +++ b/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs @@ -214,7 +214,7 @@ namespace MediaBrowser.Controller.Providers.TV series.AirTime = doc.SafeGetString("//Airs_Time"); string n = doc.SafeGetString("//banner"); - if (!string.IsNullOrWhiteSpace(n)) + if (!string.IsNullOrWhiteSpace(n) && !series.HasImage(ImageType.Banner)) { series.SetImage(ImageType.Banner, await _providerManager.DownloadAndSaveImage(series, TVUtils.BannerUrl + n, "banner" + Path.GetExtension(n), ConfigurationManager.Configuration.SaveLocalMeta, TvDbResourcePool, cancellationToken).ConfigureAwait(false)); } diff --git a/MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs b/MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs index 1c279016d6..4551fe29af 100644 --- a/MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs +++ b/MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs @@ -1,10 +1,10 @@ -using System.IO; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Resolvers; using System; using System.Collections.Generic; +using System.IO; using System.Linq; -using MediaBrowser.Controller.Resolvers; namespace MediaBrowser.Server.Implementations.Library { diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/LocalTrailerResolver.cs b/MediaBrowser.Server.Implementations/Library/Resolvers/LocalTrailerResolver.cs index ba7590e7fc..10ee3586d7 100644 --- a/MediaBrowser.Server.Implementations/Library/Resolvers/LocalTrailerResolver.cs +++ b/MediaBrowser.Server.Implementations/Library/Resolvers/LocalTrailerResolver.cs @@ -1,8 +1,8 @@ using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Resolvers; using System; using System.IO; -using MediaBrowser.Controller.Resolvers; namespace MediaBrowser.Server.Implementations.Library.Resolvers {