diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-20 18:19:55 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-20 18:19:55 -0400 |
| commit | 58c77529d218993c61fa80ad9a049f90f779741b (patch) | |
| tree | 22bfacf62341726d040116e3a0560cbef649964e /MediaBrowser.Server.Implementations/Providers/ProviderManager.cs | |
| parent | 14a806b90067934027c19d3b4662b92a118f18a8 (diff) | |
removed superfluous GetMemoryStream
Diffstat (limited to 'MediaBrowser.Server.Implementations/Providers/ProviderManager.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Providers/ProviderManager.cs | 30 |
1 files changed, 25 insertions, 5 deletions
diff --git a/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs b/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs index 97548140c..e4f57e8d9 100644 --- a/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs +++ b/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs @@ -202,7 +202,7 @@ namespace MediaBrowser.Server.Implementations.Providers { item.ProviderData[_supportedProvidersKey] = supportedProvidersInfo; } - + return result || providersChanged; } @@ -282,7 +282,7 @@ namespace MediaBrowser.Server.Implementations.Providers } catch (ObjectDisposedException) { - + } } @@ -358,7 +358,7 @@ namespace MediaBrowser.Server.Implementations.Providers Path.Combine(item.MetaLocation, targetName) : _remoteImageCache.GetResourcePath(item.GetType().FullName + item.Path.ToLower(), targetName); - var img = await _httpClient.GetMemoryStream(source, resourcePool, cancellationToken).ConfigureAwait(false); + var img = await _httpClient.Get(source, resourcePool, cancellationToken).ConfigureAwait(false); if (ConfigurationManager.Configuration.SaveLocalMeta) // queue to media directories { @@ -422,12 +422,32 @@ namespace MediaBrowser.Server.Implementations.Providers throw new ArgumentNullException(); } - cancellationToken.ThrowIfCancellationRequested(); + if (cancellationToken.IsCancellationRequested) + { + dataToSave.Dispose(); + cancellationToken.ThrowIfCancellationRequested(); + } //Tell the watchers to ignore _directoryWatchers.TemporarilyIgnore(path); - dataToSave.Position = 0; + if (dataToSave.CanSeek) + { + dataToSave.Position = 0; + } + + if (!(dataToSave is MemoryStream || dataToSave is FileStream)) + { + var ms = new MemoryStream(); + + using (var input = dataToSave) + { + await input.CopyToAsync(ms).ConfigureAwait(false); + } + + ms.Position = 0; + dataToSave = ms; + } try { |
