aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@protonmail.com>2019-10-09 14:53:18 +0200
committerWladimir J. van der Laan <laanwj@protonmail.com>2019-10-09 14:53:18 +0200
commitfacb9a1315f97489a20eb0e969fdb14b5128ed2f (patch)
treee3104a7723621f3d13956d1bcbd7d9f4b2db5a27
parentc08bf2b574636023cd9d68cb43b3dada5b0cc737 (diff)
init: Change fallback locale to C.UTF-8
Much of our code assumes UTF-8 support, and this is a more realistic guess for modern systems anyway than the default character set (which would be ASCII only). So change the assumed fallback locale (if no locale is defined by the user or OS) to `C.UTF-8`.
-rw-r--r--src/util/system.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/util/system.cpp b/src/util/system.cpp
index 8098cde093..f22256615f 100644
--- a/src/util/system.cpp
+++ b/src/util/system.cpp
@@ -1153,12 +1153,12 @@ void SetupEnvironment()
}
#endif
// On most POSIX systems (e.g. Linux, but not BSD) the environment's locale
- // may be invalid, in which case the "C" locale is used as fallback.
+ // may be invalid, in which case the "C.UTF-8" locale is used as fallback.
#if !defined(WIN32) && !defined(MAC_OSX) && !defined(__FreeBSD__) && !defined(__OpenBSD__)
try {
std::locale(""); // Raises a runtime error if current locale is invalid
} catch (const std::runtime_error&) {
- setenv("LC_ALL", "C", 1);
+ setenv("LC_ALL", "C.UTF-8", 1);
}
#elif defined(WIN32)
// Set the default input/output charset is utf-8