aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-03-06 01:42:59 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-03-06 01:42:59 -0500
commit3788033dcd99c8e8616db309a4ddd232a9dc801e (patch)
tree1dec7e0e2c0ec9f94baa3b85bb2678e2b377993a
parentfce2c95ac71a2c583c50e14137cb7bfd3750645b (diff)
don't allow image processing after disposing
-rw-r--r--MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs13
1 files changed, 13 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
index 180faa6bb..64c812e1b 100644
--- a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
+++ b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs
@@ -202,6 +202,8 @@ namespace MediaBrowser.Server.Implementations.Drawing
try
{
+ CheckDisposed();
+
var newWidth = Convert.ToInt32(newSize.Width);
var newHeight = Convert.ToInt32(newSize.Height);
@@ -448,6 +450,7 @@ namespace MediaBrowser.Server.Implementations.Drawing
/// <returns>ImageSize.</returns>
private ImageSize GetImageSizeInternal(string path)
{
+ CheckDisposed();
var size = ImageHeader.GetDimensions(path, _logger, _fileSystem);
StartSaveImageSizeTimer();
@@ -793,10 +796,20 @@ namespace MediaBrowser.Server.Implementations.Drawing
});
}
+ private bool _disposed;
public void Dispose()
{
+ _disposed = true;
Wand.CloseEnvironment();
_saveImageSizeTimer.Dispose();
}
+
+ private void CheckDisposed()
+ {
+ if (_disposed)
+ {
+ throw new ObjectDisposedException(GetType().Name);
+ }
+ }
}
}