From 232095797e63dfc8dd0449cad5fa9eae235c9ca0 Mon Sep 17 00:00:00 2001 From: zoltanvb <101990835+zoltanvb@users.noreply.github.com> Date: Tue, 31 Oct 2023 20:03:24 +0100 Subject: [PATCH] Set fixed locale for numbers, close to config read/write (#15782) Move setlocale() closer to config file read/write. --- command.c | 5 +++++ retroarch.c | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/command.c b/command.c index 5c07767f7171..f95084407cc1 100644 --- a/command.c +++ b/command.c @@ -18,6 +18,7 @@ #include #include #include +#include #ifdef HAVE_NETWORKING #include #include @@ -1166,6 +1167,10 @@ bool command_event_save_config( const char *str = path_exists ? config_path : path_get(RARCH_PATH_CONFIG); + /* Workaround for libdecor 0.2.0 setting unwanted locale */ +#if defined(HAVE_WAYLAND) && defined(HAVE_DYNAMIC) + setlocale(LC_NUMERIC,"C"); +#endif if (path_exists && config_save_file(config_path)) { snprintf(s, len, "%s \"%s\".", diff --git a/retroarch.c b/retroarch.c index 729b5a3ac907..2953c652086a 100644 --- a/retroarch.c +++ b/retroarch.c @@ -5917,6 +5917,10 @@ static bool retroarch_parse_input_and_config( if (!(p_rarch->flags & RARCH_FLAGS_BLOCK_CONFIG_READ)) #endif { + /* Workaround for libdecor 0.2.0 setting unwanted locale */ +#if defined(HAVE_WAYLAND) && defined(HAVE_DYNAMIC) + setlocale(LC_NUMERIC,"C"); +#endif /* If this is a static build, load salamander * config file first (sets RARCH_PATH_CORE) */ #if !defined(HAVE_DYNAMIC)