aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common/Updates
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2017-10-20 12:16:56 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2017-10-20 12:16:56 -0400
commit060215143ff62e4cf475a493e57c8607beca8640 (patch)
tree1d1095525a83bb8183184db952d28556bc05f323 /MediaBrowser.Common/Updates
parent86226ff97c7d6dc4005c3bb1978861e948de1e20 (diff)
improve httpclient resource disposal
Diffstat (limited to 'MediaBrowser.Common/Updates')
-rw-r--r--MediaBrowser.Common/Updates/GithubUpdater.cs26
1 files changed, 16 insertions, 10 deletions
diff --git a/MediaBrowser.Common/Updates/GithubUpdater.cs b/MediaBrowser.Common/Updates/GithubUpdater.cs
index 2106ac6d5..30abdc5da 100644
--- a/MediaBrowser.Common/Updates/GithubUpdater.cs
+++ b/MediaBrowser.Common/Updates/GithubUpdater.cs
@@ -40,11 +40,14 @@ namespace MediaBrowser.Common.Updates
options.CacheLength = cacheLength;
}
- using (var stream = await _httpClient.Get(options).ConfigureAwait(false))
+ using (var response = await _httpClient.SendAsync(options, "GET").ConfigureAwait(false))
{
- var obj = _jsonSerializer.DeserializeFromStream<RootObject[]>(stream);
+ using (var stream = response.Content)
+ {
+ var obj = _jsonSerializer.DeserializeFromStream<RootObject[]>(stream);
- return CheckForUpdateResult(obj, minVersion, updateLevel, assetFilename, packageName, targetFilename);
+ return CheckForUpdateResult(obj, minVersion, updateLevel, assetFilename, packageName, targetFilename);
+ }
}
}
@@ -110,17 +113,20 @@ namespace MediaBrowser.Common.Updates
BufferContent = false
};
- using (var stream = await _httpClient.Get(options).ConfigureAwait(false))
+ using (var response = await _httpClient.SendAsync(options, "GET").ConfigureAwait(false))
{
- var obj = _jsonSerializer.DeserializeFromStream<RootObject[]>(stream);
+ using (var stream = response.Content)
+ {
+ var obj = _jsonSerializer.DeserializeFromStream<RootObject[]>(stream);
- obj = obj.Where(i => (i.assets ?? new List<Asset>()).Any(a => IsAsset(a, assetFilename, i.tag_name))).ToArray();
+ obj = obj.Where(i => (i.assets ?? new List<Asset>()).Any(a => IsAsset(a, assetFilename, i.tag_name))).ToArray();
- list.AddRange(obj.Where(i => MatchesUpdateLevel(i, PackageVersionClass.Release)).OrderByDescending(GetVersion).Take(1));
- list.AddRange(obj.Where(i => MatchesUpdateLevel(i, PackageVersionClass.Beta)).OrderByDescending(GetVersion).Take(1));
- list.AddRange(obj.Where(i => MatchesUpdateLevel(i, PackageVersionClass.Dev)).OrderByDescending(GetVersion).Take(1));
+ list.AddRange(obj.Where(i => MatchesUpdateLevel(i, PackageVersionClass.Release)).OrderByDescending(GetVersion).Take(1));
+ list.AddRange(obj.Where(i => MatchesUpdateLevel(i, PackageVersionClass.Beta)).OrderByDescending(GetVersion).Take(1));
+ list.AddRange(obj.Where(i => MatchesUpdateLevel(i, PackageVersionClass.Dev)).OrderByDescending(GetVersion).Take(1));
- return list;
+ return list;
+ }
}
}