diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-02-25 10:40:16 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-02-25 10:40:16 -0500 |
| commit | aef805efb9e1655978bb1a71990f1060a3dcf768 (patch) | |
| tree | b1ef969377e2337d17cc2feb9a83ea774b12bb63 /MediaBrowser.Providers/Manager | |
| parent | 7497fe9554482fcdf78ed49c436edba0b20c8350 (diff) | |
fix directory not found error in episode organization
Diffstat (limited to 'MediaBrowser.Providers/Manager')
| -rw-r--r-- | MediaBrowser.Providers/Manager/ItemImageProvider.cs | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs index 7610f72490..a0ab069d3d 100644 --- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs +++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs @@ -60,8 +60,8 @@ namespace MediaBrowser.Providers.Manager var providerIds = new List<Guid>(); // In order to avoid duplicates, only download these if there are none already - var backdropLimit = item.HasImage(ImageType.Backdrop) ? 0 : savedOptions.GetLimit(ImageType.Backdrop); - var screenshotLimit = item.HasImage(ImageType.Screenshot) ? 0 : savedOptions.GetLimit(ImageType.Screenshot); + var backdropLimit = savedOptions.GetLimit(ImageType.Backdrop); + var screenshotLimit = savedOptions.GetLimit(ImageType.Screenshot); foreach (var provider in providers) { @@ -362,9 +362,25 @@ namespace MediaBrowser.Providers.Manager { var response = await provider.GetImageResponse(url, cancellationToken).ConfigureAwait(false); + // If there's already an image of the same size, skip it + if (response.ContentLength.HasValue) + { + try + { + if (item.GetImages(imageType).Any(i => new FileInfo(i.Path).Length == response.ContentLength.Value)) + { + response.Content.Dispose(); + continue; + } + } + catch (IOException ex) + { + _logger.ErrorException("Error examining images", ex); + } + } + await _providerManager.SaveImage(item, response.Content, response.ContentType, imageType, null, cancellationToken).ConfigureAwait(false); result.UpdateType = result.UpdateType | ItemUpdateType.ImageUpdate; - break; } catch (HttpException ex) { |
