aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--common/command.cc10
-rw-r--r--gowin/main.cc9
2 files changed, 9 insertions, 10 deletions
diff --git a/common/command.cc b/common/command.cc
index 2167deb9..0de9ccc4 100644
--- a/common/command.cc
+++ b/common/command.cc
@@ -45,7 +45,15 @@
NEXTPNR_NAMESPACE_BEGIN
-CommandHandler::CommandHandler(int argc, char **argv) : argc(argc), argv(argv) { log_streams.clear(); }
+CommandHandler::CommandHandler(int argc, char **argv) : argc(argc), argv(argv)
+{
+ 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
+ }
+ log_streams.clear();
+}
bool CommandHandler::parseOptions()
{
diff --git a/gowin/main.cc b/gowin/main.cc
index e3c6762b..19c1d02c 100644
--- a/gowin/main.cc
+++ b/gowin/main.cc
@@ -91,15 +91,6 @@ void GowinCommandHandler::customAfterLoad(Context *ctx)
int main(int argc, char *argv[])
{
- // set the locale here because when you create a context you create several
- // 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.
- 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();
}