aboutsummaryrefslogtreecommitdiff
path: root/Emby.Drawing/ImageProcessor.cs
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2015-09-02 11:50:00 -0400
committerLuke <luke.pulverenti@gmail.com>2015-09-02 11:50:00 -0400
commitf868dd81e856488280978006cbb67afc2677049d (patch)
tree616ba8ae846efe9ec889abeb12f6b2702c6b8592 /Emby.Drawing/ImageProcessor.cs
parentaf89446c20fb302087b82c18c28da92076dbc5ac (diff)
parente6d5901408ba7d8e344a27ea1f3b0046c40e56c1 (diff)
Merge pull request #1164 from MediaBrowser/dev
3.0.5724.1
Diffstat (limited to 'Emby.Drawing/ImageProcessor.cs')
-rw-r--r--Emby.Drawing/ImageProcessor.cs20
1 files changed, 13 insertions, 7 deletions
diff --git a/Emby.Drawing/ImageProcessor.cs b/Emby.Drawing/ImageProcessor.cs
index 2ba4f5aab..970b463cd 100644
--- a/Emby.Drawing/ImageProcessor.cs
+++ b/Emby.Drawing/ImageProcessor.cs
@@ -189,7 +189,7 @@ namespace Emby.Drawing
dateModified = tuple.Item2;
}
- var originalImageSize = GetImageSize(originalImagePath, dateModified);
+ var originalImageSize = GetImageSize(originalImagePath, dateModified, true);
// Determine the output size based on incoming parameters
var newSize = DrawingUtils.Resize(originalImageSize, options.Width, options.Height, options.MaxWidth, options.MaxHeight);
@@ -363,12 +363,12 @@ namespace Emby.Drawing
/// <returns>ImageSize.</returns>
public ImageSize GetImageSize(string path)
{
- return GetImageSize(path, File.GetLastWriteTimeUtc(path));
+ return GetImageSize(path, File.GetLastWriteTimeUtc(path), false);
}
public ImageSize GetImageSize(ItemImageInfo info)
{
- return GetImageSize(info.Path, info.DateModified);
+ return GetImageSize(info.Path, info.DateModified, false);
}
/// <summary>
@@ -376,9 +376,10 @@ namespace Emby.Drawing
/// </summary>
/// <param name="path">The path.</param>
/// <param name="imageDateModified">The image date modified.</param>
+ /// <param name="allowSlowMethod">if set to <c>true</c> [allow slow method].</param>
/// <returns>ImageSize.</returns>
/// <exception cref="System.ArgumentNullException">path</exception>
- private ImageSize GetImageSize(string path, DateTime imageDateModified)
+ private ImageSize GetImageSize(string path, DateTime imageDateModified, bool allowSlowMethod)
{
if (string.IsNullOrEmpty(path))
{
@@ -393,7 +394,7 @@ namespace Emby.Drawing
if (!_cachedImagedSizes.TryGetValue(cacheHash, out size))
{
- size = GetImageSizeInternal(path);
+ size = GetImageSizeInternal(path, allowSlowMethod);
_cachedImagedSizes.AddOrUpdate(cacheHash, size, (keyName, oldValue) => size);
}
@@ -405,8 +406,9 @@ namespace Emby.Drawing
/// Gets the image size internal.
/// </summary>
/// <param name="path">The path.</param>
+ /// <param name="allowSlowMethod">if set to <c>true</c> [allow slow method].</param>
/// <returns>ImageSize.</returns>
- private ImageSize GetImageSizeInternal(string path)
+ private ImageSize GetImageSizeInternal(string path, bool allowSlowMethod)
{
ImageSize size;
@@ -416,7 +418,11 @@ namespace Emby.Drawing
}
catch
{
- _logger.Info("Failed to read image header for {0}. Doing it the slow way.", path);
+ if (!allowSlowMethod)
+ {
+ throw;
+ }
+ //_logger.Info("Failed to read image header for {0}. Doing it the slow way.", path);
CheckDisposed();