aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs16
1 files changed, 14 insertions, 2 deletions
diff --git a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
index 29993d675..4203f4cc1 100644
--- a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
+++ b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
@@ -787,12 +787,24 @@ namespace MediaBrowser.Server.Implementations.Drawing
Directory.CreateDirectory(parentDirectory);
- using (var newImage = Image.FromStream(newImageStream.Stream, true, false))
+ // Save as png
+ if (newImageStream.Format == Model.Drawing.ImageFormat.Png)
{
//And then save it in the cache
using (var outputStream = _fileSystem.GetFileStream(enhancedImagePath, FileMode.Create, FileAccess.Write, FileShare.Read, false))
{
- newImage.Save(System.Drawing.Imaging.ImageFormat.Png, outputStream, 100);
+ await newImageStream.Stream.CopyToAsync(outputStream).ConfigureAwait(false);
+ }
+ }
+ else
+ {
+ using (var newImage = Image.FromStream(newImageStream.Stream, true, false))
+ {
+ //And then save it in the cache
+ using (var outputStream = _fileSystem.GetFileStream(enhancedImagePath, FileMode.Create, FileAccess.Write, FileShare.Read, false))
+ {
+ newImage.Save(System.Drawing.Imaging.ImageFormat.Png, outputStream, 100);
+ }
}
}
}