瀏覽代碼

better stream disposal

Luke Pulverenti 12 年之前
父節點
當前提交
887c280a1b
共有 1 個文件被更改,包括 4 次插入5 次删除
  1. 4 5
      MediaBrowser.Server.Implementations/Providers/ProviderManager.cs

+ 4 - 5
MediaBrowser.Server.Implementations/Providers/ProviderManager.cs

@@ -427,17 +427,16 @@ namespace MediaBrowser.Server.Implementations.Providers
             //Tell the watchers to ignore
             _directoryWatchers.TemporarilyIgnore(path);
 
-            //Make the mod
-
             dataToSave.Position = 0;
 
             try
             {
                 using (var fs = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.Read, StreamDefaults.DefaultFileStreamBufferSize, FileOptions.Asynchronous))
                 {
-                    await dataToSave.CopyToAsync(fs, StreamDefaults.DefaultCopyToBufferSize, cancellationToken).ConfigureAwait(false);
-
-                    dataToSave.Dispose();
+                    using (var input = dataToSave)
+                    {
+                        await input.CopyToAsync(fs, StreamDefaults.DefaultCopyToBufferSize, cancellationToken).ConfigureAwait(false);
+                    }
 
                     // If this is ever used for something other than metadata we can add a file type param
                     item.ResolveArgs.AddMetadataFile(path);