From fc0ef2248c14c938e751e0c7b030659c593028b6 Mon Sep 17 00:00:00 2001 From: Simon Weinberger Date: Sun, 26 Jan 2025 07:32:00 +0100 Subject: [PATCH] a single null parameter makes the whole format expression null (propagating error state) --- Yafc.Parser/Data/LocalisedStringParser.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Yafc.Parser/Data/LocalisedStringParser.cs b/Yafc.Parser/Data/LocalisedStringParser.cs index d76cec62..87baf63f 100644 --- a/Yafc.Parser/Data/LocalisedStringParser.cs +++ b/Yafc.Parser/Data/LocalisedStringParser.cs @@ -140,7 +140,12 @@ internal static class LocalisedStringParser { break; default: if (int.TryParse(type, out int idx) && idx >= 1 && idx <= parameters.Length) { - result.Append(parameters[idx - 1]); + string? referencedParameter = parameters[idx - 1]; + if (referencedParameter == null) { + return null; + } + + result.Append(referencedParameter); } else { result.Append(format[start..(end + 2)]);