diff --git a/gowin/main.cc b/gowin/main.cc index db74545e..e3c6762b 100644 --- a/gowin/main.cc +++ b/gowin/main.cc @@ -95,7 +95,11 @@ int main(int argc, char *argv[]) // floating point strings whose representation depends on the locale. If // you don't do this, the strings will be in the C locale and later when Qt // starts it won't be able to read them back as numbers. - std::locale::global(std::locale("")); + try { + std::locale::global(std::locale("")); + } catch (const std::runtime_error &e) { + // the locale is broken in this system, so leave it as it is + } GowinCommandHandler handler(argc, argv); return handler.exec(); }