Handle exceptions thrown by HttpClient.GetAsync.
This commit is contained in:
@@ -593,13 +593,14 @@ namespace OpenRA.Server
|
||||
{
|
||||
Task.Run(async () =>
|
||||
{
|
||||
var httpClient = HttpClientFactory.Create();
|
||||
var httpResponseMessage = await httpClient.GetAsync(playerDatabase.Profile + handshake.Fingerprint);
|
||||
var result = await httpResponseMessage.Content.ReadAsStreamAsync();
|
||||
PlayerProfile profile = null;
|
||||
|
||||
try
|
||||
{
|
||||
var httpClient = HttpClientFactory.Create();
|
||||
var httpResponseMessage = await httpClient.GetAsync(playerDatabase.Profile + handshake.Fingerprint);
|
||||
var result = await httpResponseMessage.Content.ReadAsStreamAsync();
|
||||
|
||||
var yaml = MiniYaml.FromStream(result).First();
|
||||
if (yaml.Key == "Player")
|
||||
{
|
||||
|
||||
@@ -40,20 +40,24 @@ namespace OpenRA.Mods.Common
|
||||
{ "version", Game.ModData.Manifest.Metadata.Version }
|
||||
}.ToString();
|
||||
|
||||
var client = HttpClientFactory.Create();
|
||||
|
||||
var httpResponseMessage = await client.GetAsync(queryURL);
|
||||
var result = await httpResponseMessage.Content.ReadAsStringAsync();
|
||||
|
||||
var status = ModVersionStatus.Latest;
|
||||
switch (result)
|
||||
try
|
||||
{
|
||||
case "outdated": status = ModVersionStatus.Outdated; break;
|
||||
case "unknown": status = ModVersionStatus.Unknown; break;
|
||||
case "playtest": status = ModVersionStatus.PlaytestAvailable; break;
|
||||
}
|
||||
var client = HttpClientFactory.Create();
|
||||
|
||||
Game.RunAfterTick(() => ModVersionStatus = status);
|
||||
var httpResponseMessage = await client.GetAsync(queryURL);
|
||||
var result = await httpResponseMessage.Content.ReadAsStringAsync();
|
||||
|
||||
var status = ModVersionStatus.Latest;
|
||||
switch (result)
|
||||
{
|
||||
case "outdated": status = ModVersionStatus.Outdated; break;
|
||||
case "unknown": status = ModVersionStatus.Unknown; break;
|
||||
case "playtest": status = ModVersionStatus.PlaytestAvailable; break;
|
||||
}
|
||||
|
||||
Game.RunAfterTick(() => ModVersionStatus = status);
|
||||
}
|
||||
catch { }
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -235,12 +235,12 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
||||
|
||||
Task.Run(async () =>
|
||||
{
|
||||
var client = HttpClientFactory.Create();
|
||||
var httpResponseMessage = await client.GetAsync(download.MirrorList);
|
||||
var result = await httpResponseMessage.Content.ReadAsStringAsync();
|
||||
|
||||
try
|
||||
{
|
||||
var client = HttpClientFactory.Create();
|
||||
var httpResponseMessage = await client.GetAsync(download.MirrorList);
|
||||
var result = await httpResponseMessage.Content.ReadAsStringAsync();
|
||||
|
||||
var mirrorList = result.Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
downloadUrl(mirrorList.Random(new MersenneTwister()));
|
||||
}
|
||||
|
||||
@@ -343,16 +343,17 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
||||
|
||||
Task.Run(async () =>
|
||||
{
|
||||
var games = new List<GameServer>();
|
||||
var client = HttpClientFactory.Create();
|
||||
var httpResponseMessage = await client.GetAsync(queryURL);
|
||||
var result = await httpResponseMessage.Content.ReadAsStreamAsync();
|
||||
|
||||
List<GameServer> games = null;
|
||||
activeQuery = true;
|
||||
|
||||
try
|
||||
{
|
||||
var client = HttpClientFactory.Create();
|
||||
var httpResponseMessage = await client.GetAsync(queryURL);
|
||||
var result = await httpResponseMessage.Content.ReadAsStreamAsync();
|
||||
|
||||
var yaml = MiniYaml.FromStream(result);
|
||||
games = new List<GameServer>();
|
||||
foreach (var node in yaml)
|
||||
{
|
||||
try
|
||||
|
||||
Reference in New Issue
Block a user