From 7d17916e3f04eeefbff33e6f395b2bb0f3a2f9e7 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sat, 22 Feb 2020 17:39:40 +0000 Subject: [PATCH] Load badges on the main thread. --- OpenRA.Game/PlayerProfile.cs | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/OpenRA.Game/PlayerProfile.cs b/OpenRA.Game/PlayerProfile.cs index 8b3edd026a..6d1bded77b 100644 --- a/OpenRA.Game/PlayerProfile.cs +++ b/OpenRA.Game/PlayerProfile.cs @@ -35,19 +35,20 @@ namespace OpenRA var badgesNode = yaml.Nodes.FirstOrDefault(n => n.Key == "Badges"); if (badgesNode != null) { - try + var playerDatabase = Game.ModData.Manifest.Get(); + foreach (var badgeNode in badgesNode.Value.Nodes) { - var playerDatabase = Game.ModData.Manifest.Get(); - foreach (var badgeNode in badgesNode.Value.Nodes) + Game.RunAfterTick(() => { - var badge = playerDatabase.LoadBadge(badgeNode.Value); - if (badge != null) - badges.Add(badge); - } - } - catch - { - // Discard badges on error + // Discard badge on error + try + { + var badge = playerDatabase.LoadBadge(badgeNode.Value); + if (badge != null) + badges.Add(badge); + } + catch { } + }); } }