aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/Manager/ItemImageProvider.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Providers/Manager/ItemImageProvider.cs')
-rw-r--r--MediaBrowser.Providers/Manager/ItemImageProvider.cs45
1 files changed, 30 insertions, 15 deletions
diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
index a0ab069d3..ca02953ad 100644
--- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs
+++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
@@ -267,40 +267,55 @@ namespace MediaBrowser.Providers.Manager
{
var currentImage = item.GetImageInfo(type, 0);
- if (currentImage == null || !string.Equals(currentImage.Path, image.FileInfo.FullName, StringComparison.OrdinalIgnoreCase))
+ if (currentImage == null)
{
item.SetImagePath(type, image.FileInfo);
changed = true;
}
+ else if (!string.Equals(currentImage.Path, image.FileInfo.FullName,
+ StringComparison.OrdinalIgnoreCase))
+ {
+ item.SetImagePath(type, image.FileInfo);
+ changed = true;
+ }
+ else
+ {
+ currentImage.DateModified = _fileSystem.GetLastWriteTimeUtc(image.FileInfo);
+ }
}
}
- var backdrops = images.Where(i => i.Type == ImageType.Backdrop).ToList();
- if (backdrops.Count > 0)
+ if (UpdateMultiImages(item, images, ImageType.Backdrop))
{
- var foundImages = images.Where(i => i.Type == ImageType.Backdrop)
- .Select(i => i.FileInfo)
- .ToList();
+ changed = true;
+ }
- if (foundImages.Count > 0)
+ var hasScreenshots = item as IHasScreenshots;
+ if (hasScreenshots != null)
+ {
+ if (UpdateMultiImages(item, images, ImageType.Screenshot))
{
- if (item.AddImages(ImageType.Backdrop, foundImages))
- {
- changed = true;
- }
+ changed = true;
}
}
- var hasScreenshots = item as IHasScreenshots;
- if (hasScreenshots != null)
+ return changed;
+ }
+
+ private bool UpdateMultiImages(IHasImages item, List<LocalImageInfo> images, ImageType type)
+ {
+ var changed = false;
+
+ var backdrops = images.Where(i => i.Type == type).ToList();
+ if (backdrops.Count > 0)
{
- var foundImages = images.Where(i => i.Type == ImageType.Screenshot)
+ var foundImages = images.Where(i => i.Type == type)
.Select(i => i.FileInfo)
.ToList();
if (foundImages.Count > 0)
{
- if (item.AddImages(ImageType.Screenshot, foundImages))
+ if (item.AddImages(type, foundImages))
{
changed = true;
}