From 7bd253d56bcd7d81a0d79044a1551c0a38e664fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sat, 27 Apr 2013 09:52:53 +0200 Subject: [PATCH] Don't crash when the fonts are not yet loaded closes #3157 --- OpenRA.Mods.Cnc/CncLoadScreen.cs | 8 +++++--- OpenRA.Mods.D2k/D2kLoadScreen.cs | 3 +++ OpenRA.Mods.RA/RALoadScreen.cs | 3 +++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/OpenRA.Mods.Cnc/CncLoadScreen.cs b/OpenRA.Mods.Cnc/CncLoadScreen.cs index cd63e87f74..2fd58ab0a4 100644 --- a/OpenRA.Mods.Cnc/CncLoadScreen.cs +++ b/OpenRA.Mods.Cnc/CncLoadScreen.cs @@ -86,7 +86,7 @@ namespace OpenRA.Mods.Cnc WidgetUtils.DrawPanelPartial(ss, Bounds, PanelSides.Edges); var barY = Bounds.Height - 78; - if (!setup) + if (!setup && r.Fonts != null) { loadingFont = r.Fonts["BigBold"]; loadingText = "Loading"; @@ -100,8 +100,10 @@ namespace OpenRA.Mods.Cnc setup = true; } - loadingFont.DrawText(loadingText, loadingPos, Color.Gray); - versionFont.DrawTextWithContrast(versionText, versionPos, Color.White, Color.Black, 2); + if (loadingFont != null) + loadingFont.DrawText(loadingText, loadingPos, Color.Gray); + if (versionFont != null) + versionFont.DrawTextWithContrast(versionText, versionPos, Color.White, Color.Black, 2); for (var i = 0; i <= 8; i++) { diff --git a/OpenRA.Mods.D2k/D2kLoadScreen.cs b/OpenRA.Mods.D2k/D2kLoadScreen.cs index 146d1e250e..69f32aef68 100644 --- a/OpenRA.Mods.D2k/D2kLoadScreen.cs +++ b/OpenRA.Mods.D2k/D2kLoadScreen.cs @@ -53,6 +53,9 @@ namespace OpenRA.Mods.D2k if (lastLoadScreen.ElapsedTime() < 0.5) return; + if (r.Fonts == null) + return; + lastLoadScreen.Reset(); var text = Comments.Random(Game.CosmeticRandom); var textSize = r.Fonts["Bold"].Measure(text); diff --git a/OpenRA.Mods.RA/RALoadScreen.cs b/OpenRA.Mods.RA/RALoadScreen.cs index d4e8184aea..d44b4aba74 100644 --- a/OpenRA.Mods.RA/RALoadScreen.cs +++ b/OpenRA.Mods.RA/RALoadScreen.cs @@ -57,6 +57,9 @@ namespace OpenRA.Mods.RA if (lastLoadScreen.ElapsedTime() < 0.5) return; + if (r.Fonts == null) + return; + lastLoadScreen.Reset(); var text = Comments.Random(Game.CosmeticRandom); var textSize = r.Fonts["Bold"].Measure(text);