detect_locale crash fix

This commit is contained in:
@clasher113 2025-01-28 16:09:45 +02:00
parent dece2e25bc
commit fac95c1c36

View File

@ -65,17 +65,21 @@ int platform::get_process_id() {
#else // _WIN32
#include <unistd.h>
#include "frontend/locale.hpp"
void platform::configure_encoding() {
}
std::string platform::detect_locale() {
std::string programLocaleName = setlocale(LC_ALL, nullptr);
std::string preferredLocaleName =
const char* const programLocaleName = setlocale(LC_ALL, nullptr);
const char* const preferredLocaleName =
setlocale(LC_ALL, ""); // locale name format: ll_CC.encoding
setlocale(LC_ALL, programLocaleName.c_str());
if (programLocaleName && preferredLocaleName) {
setlocale(LC_ALL, programLocaleName);
return preferredLocaleName.substr(0, 5);
return std::string(preferredLocaleName, 5);
}
return langs::FALLBACK_DEFAULT;
}
void platform::sleep(size_t millis) {