diff --git a/EU07.cpp b/EU07.cpp index 9b2e540b..2ecf53b3 100644 --- a/EU07.cpp +++ b/EU07.cpp @@ -29,7 +29,7 @@ Stele, firleju, szociu, hunter, ZiomalCl, OLI_EU and others #endif #ifdef _MSC_VER -#pragma comment(linker, "/subsystem:console /ENTRY:mainCRTStartup") +#pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup") #endif void export_e3d_standalone(std::string in, std::string out, int flags, bool dynamic); diff --git a/Globals.cpp b/Globals.cpp index 40fb13a6..c2d6b096 100644 --- a/Globals.cpp +++ b/Globals.cpp @@ -488,7 +488,7 @@ global_settings::ConfigParse(cParser &Parser) { // tryb antyaliasingu: 0=brak,1=2px,2=4px Parser.getTokens(1, false); Parser >> iMultisampling; - iMultisampling = clamp(iMultisampling, 0, 3); + iMultisampling = clamp(iMultisampling, 0, 4); // liczone 2 ^ n } else if (token == "latitude") { diff --git a/application.cpp b/application.cpp index 323c9461..83debea4 100644 --- a/application.cpp +++ b/application.cpp @@ -55,7 +55,6 @@ http://mozilla.org/MPL/2.0/. eu07_application Application; screenshot_manager screenshot_man; - ui_layer uilayerstaticinitializer; #ifdef _WIN32 @@ -581,6 +580,9 @@ eu07_application::run() { std::this_thread::sleep_for( Global.minframetime - frametime ); } } + Global.applicationQuitOrder = true; + Global.threads["DiscordRPC"].join(); // wait for DiscordRPC thread to finish + Global.threads["LogService"].join(); // wait for logging thread to finish return 0; } @@ -613,8 +615,19 @@ eu07_application::release_python_lock() { void eu07_application::exit() { Global.applicationQuitOrder = true; - Global.threads["LogService"].join(); // kill log service - Global.threads["DiscordRPC"].join(); // kill DiscordRPC service + auto it = Global.threads.find("LogService"); + if (it != Global.threads.end()) + { + if (it->second.joinable()) + it->second.join(); + } + + it = Global.threads.find("DiscordRPC"); + if (it != Global.threads.end()) + { + if (it->second.joinable()) + it->second.join(); + } for (auto &mode : m_modes) @@ -907,7 +920,7 @@ eu07_application::init_settings( int Argc, char *Argv[] ) { #ifdef _WIN32 if (const char *appdata = std::getenv("APPDATA")) { - iniPath = fs::path(appdata) / "MaSzyna" / "Config" / "eu07.ini"; + iniPath = fs::path(appdata) / "MaSzyna" / "eu07.ini"; } #else if (const char *home = std::getenv("HOME")) diff --git a/drivermouseinput.cpp b/drivermouseinput.cpp index 0a86011d..0cf8b250 100644 --- a/drivermouseinput.cpp +++ b/drivermouseinput.cpp @@ -185,7 +185,7 @@ drivermouse_input::recall_bindings() { #ifdef _WIN32 if (const char *appdata = std::getenv("APPDATA")) { - fs::path appPath = fs::path(appdata) / "MaSzyna" / "Config" / "eu07_input-mouse.ini"; + fs::path appPath = fs::path(appdata) / "MaSzyna" / "eu07_input-mouse.ini"; if (fs::exists(appPath)) filePath = appPath.string(); } diff --git a/gamepadinput.cpp b/gamepadinput.cpp index a9e3e234..8292a25d 100644 --- a/gamepadinput.cpp +++ b/gamepadinput.cpp @@ -159,7 +159,7 @@ gamepad_input::recall_bindings() { #ifdef _WIN32 if (const char *appdata = std::getenv("APPDATA")) { - fs::path appPath = fs::path(appdata) / "MaSzyna" / "Config" / "eu07_input-gamepad.ini"; + fs::path appPath = fs::path(appdata) / "MaSzyna" / "eu07_input-gamepad.ini"; if (fs::exists(appPath)) filePath = appPath.string(); } diff --git a/keyboardinput.cpp b/keyboardinput.cpp index 1052752c..e1b499d0 100644 --- a/keyboardinput.cpp +++ b/keyboardinput.cpp @@ -127,7 +127,7 @@ keyboard_input::recall_bindings() { #ifdef _WIN32 if (const char *appdata = std::getenv("APPDATA")) { - iniPath = fs::path(appdata) / "MaSzyna" / "Config" / "eu07_input-keyboard.ini"; + iniPath = fs::path(appdata) / "MaSzyna" / "eu07_input-keyboard.ini"; } #else if (const char *home = std::getenv("HOME")) diff --git a/uart.cpp b/uart.cpp index b2be9496..ad26b15a 100644 --- a/uart.cpp +++ b/uart.cpp @@ -197,7 +197,7 @@ uart_input::recall_bindings() { #ifdef _WIN32 if (const char *appdata = std::getenv("APPDATA")) { - fs::path appPath = fs::path(appdata) / "MaSzyna" / "Config" / "eu07_input-uart.ini"; + fs::path appPath = fs::path(appdata) / "MaSzyna" / "eu07_input-uart.ini"; if (fs::exists(appPath)) filePath = appPath.string(); }