aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs19
-rw-r--r--MediaBrowser.Providers/Manager/ItemImageProvider.cs13
2 files changed, 29 insertions, 3 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index 89d48ff90..5b4cd5900 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -1987,6 +1987,10 @@ namespace MediaBrowser.Controller.Entities
image.Path = file.FullName;
image.DateModified = imageInfo.DateModified;
+
+ // reset these values
+ image.Width = 0;
+ image.Height = 0;
}
}
@@ -2137,6 +2141,7 @@ namespace MediaBrowser.Controller.Entities
var newImageList = new List<FileSystemMetadata>();
var imageAdded = false;
+ var imageUpdated = false;
foreach (var newImage in images)
{
@@ -2157,7 +2162,17 @@ namespace MediaBrowser.Controller.Entities
{
if (existing.IsLocalFile)
{
- existing.DateModified = FileSystem.GetLastWriteTimeUtc(newImage);
+ var newDateModified = FileSystem.GetLastWriteTimeUtc(newImage);
+
+ // If date changed then we need to reset saved image dimensions
+ if (existing.DateModified != newDateModified && (existing.Width > 0 || existing.Height > 0))
+ {
+ existing.Width = 0;
+ existing.Height = 0;
+ imageUpdated = true;
+ }
+
+ existing.DateModified = newDateModified;
}
}
}
@@ -2190,7 +2205,7 @@ namespace MediaBrowser.Controller.Entities
ImageInfos = newList;
}
- return newImageList.Count > 0;
+ return imageUpdated || newImageList.Count > 0;
}
private ItemImageInfo GetImageInfo(FileSystemMetadata file, ImageType type)
diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
index 4419b48cb..1d432463b 100644
--- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs
+++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
@@ -412,7 +412,18 @@ namespace MediaBrowser.Providers.Manager
}
else
{
- currentImage.DateModified = _fileSystem.GetLastWriteTimeUtc(image.FileInfo);
+
+ var newDateModified = _fileSystem.GetLastWriteTimeUtc(image.FileInfo);
+
+ // If date changed then we need to reset saved image dimensions
+ if (currentImage.DateModified != newDateModified && (currentImage.Width > 0 || currentImage.Height > 0))
+ {
+ currentImage.Width = 0;
+ currentImage.Height = 0;
+ changed = true;
+ }
+
+ currentImage.DateModified = newDateModified;
}
}
else