diff --git a/MediaBrowser.Api/Images/ImageService.cs b/MediaBrowser.Api/Images/ImageService.cs
index 673593d824..4518ffad00 100644
--- a/MediaBrowser.Api/Images/ImageService.cs
+++ b/MediaBrowser.Api/Images/ImageService.cs
@@ -679,7 +679,7 @@ namespace MediaBrowser.Api.Images
}
// See if we can avoid a file system lookup by looking for the file in ResolveArgs
- var originalFileImageDateModified = kernel.ImageManager.GetImageDateModified(item, request.Type, index);
+ var originalFileImageDateModified = kernel.ImageManager.GetImageDateModified(item, imagePath);
var supportedImageEnhancers = request.EnableImageEnhancers ? kernel.ImageManager.ImageEnhancers.Where(i =>
{
@@ -723,7 +723,8 @@ namespace MediaBrowser.Api.Images
Item = currentItem,
Request = currentRequest,
OriginalImageDateModified = originalFileImageDateModified,
- Enhancers = supportedImageEnhancers
+ Enhancers = supportedImageEnhancers,
+ OriginalImagePath = imagePath
}, contentType);
}
diff --git a/MediaBrowser.Api/Images/ImageWriter.cs b/MediaBrowser.Api/Images/ImageWriter.cs
index 81dbb02434..a734e28e80 100644
--- a/MediaBrowser.Api/Images/ImageWriter.cs
+++ b/MediaBrowser.Api/Images/ImageWriter.cs
@@ -33,6 +33,8 @@ namespace MediaBrowser.Api.Images
///
public DateTime OriginalImageDateModified;
+ public string OriginalImagePath;
+
///
/// The _options
///
@@ -71,7 +73,7 @@ namespace MediaBrowser.Api.Images
cropwhitespace = Request.CropWhitespace.Value;
}
- return Kernel.Instance.ImageManager.ProcessImage(Item, Request.Type, Request.Index ?? 0, cropwhitespace,
+ return Kernel.Instance.ImageManager.ProcessImage(Item, Request.Type, Request.Index ?? 0, OriginalImagePath, cropwhitespace,
OriginalImageDateModified, responseStream, Request.Width, Request.Height, Request.MaxWidth,
Request.MaxHeight, Request.Quality, Enhancers);
}
diff --git a/MediaBrowser.Controller/Drawing/ImageManager.cs b/MediaBrowser.Controller/Drawing/ImageManager.cs
index d6bc983c06..2ccc0dc656 100644
--- a/MediaBrowser.Controller/Drawing/ImageManager.cs
+++ b/MediaBrowser.Controller/Drawing/ImageManager.cs
@@ -96,6 +96,7 @@ namespace MediaBrowser.Controller.Drawing
/// The entity that owns the image
/// The image type
/// The image index (currently only used with backdrops)
+ /// The original image path.
/// if set to true [crop whitespace].
/// The last date modified of the original image file
/// The stream to save the new image to
@@ -107,7 +108,7 @@ namespace MediaBrowser.Controller.Drawing
/// The enhancers.
/// Task.
/// entity
- public async Task ProcessImage(BaseItem entity, ImageType imageType, int imageIndex, bool cropWhitespace, DateTime dateModified, Stream toStream, int? width, int? height, int? maxWidth, int? maxHeight, int? quality, List enhancers)
+ public async Task ProcessImage(BaseItem entity, ImageType imageType, int imageIndex, string originalImagePath, bool cropWhitespace, DateTime dateModified, Stream toStream, int? width, int? height, int? maxWidth, int? maxHeight, int? quality, List enhancers)
{
if (entity == null)
{
@@ -119,8 +120,6 @@ namespace MediaBrowser.Controller.Drawing
throw new ArgumentNullException("toStream");
}
- var originalImagePath = GetImagePath(entity, imageType, imageIndex);
-
if (cropWhitespace)
{
originalImagePath = await GetCroppedImage(originalImagePath, dateModified).ConfigureAwait(false);