From c082c235529c316bacec1375bd10af085799f0ed Mon Sep 17 00:00:00 2001 From: ParantezTech Date: Tue, 14 Jul 2026 16:55:32 +0300 Subject: [PATCH] [libc] use C locale for printf --- .../Kernel/KernelMemoryCompatExports.cs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs b/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs index 66c2af69..fd64d6df 100644 --- a/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs +++ b/src/SharpEmu.Libs/Kernel/KernelMemoryCompatExports.cs @@ -3989,7 +3989,7 @@ public static class KernelMemoryCompatExports _ => unchecked((int)argumentSource.NextGpArg()) }; - var formatted = value.ToString(); + var formatted = value.ToString(CultureInfo.InvariantCulture); if (showSign && value >= 0) formatted = "+" + formatted; else if (spaceForSign && value >= 0) @@ -4013,7 +4013,7 @@ public static class KernelMemoryCompatExports _ => (uint)argumentSource.NextGpArg() }; - var formatted = value.ToString(); + var formatted = value.ToString(CultureInfo.InvariantCulture); sb.Append(PadString(formatted, width, leftAlign, padWithZero && !leftAlign)); } break; @@ -4034,8 +4034,8 @@ public static class KernelMemoryCompatExports }; var formatted = specifier == 'x' - ? value.ToString("x") - : value.ToString("X"); + ? value.ToString("x", CultureInfo.InvariantCulture) + : value.ToString("X", CultureInfo.InvariantCulture); if (alternateForm && value != 0) formatted = specifier == 'x' ? "0x" + formatted : "0X" + formatted; @@ -4143,7 +4143,10 @@ public static class KernelMemoryCompatExports var formatStr = precision >= 0 ? $"{{0:{specifier}{precision}}}" : $"{{0:{specifier}}}"; - var formatted = string.Format(formatStr, value); + var formatted = string.Format( + CultureInfo.InvariantCulture, + formatStr, + value); if (showSign && value >= 0) formatted = "+" + formatted;