|
|
@@ -505,7 +505,13 @@ static void quitApplication()
|
|
|
// Perform quick exit without executing static destructors and let OS cleanup anything that we did not
|
|
|
// We generally don't care about them and this leads to numerous issues, e.g.
|
|
|
// destruction of locked mutexes (fails an assertion), even in third-party libraries (as well as native libs on Android)
|
|
|
+ // Android - std::quick_exit is available only starting from API level 21
|
|
|
+ // Mingw, macOS and iOS - std::quick_exit is unavailable (at least in current version of CI)
|
|
|
+#if (defined(__ANDROID_API__) && __ANDROID_API__ < 21) || (defined(__MINGW32__)) || defined(VCMI_APPLE)
|
|
|
+ ::exit(0);
|
|
|
+#else
|
|
|
std::quick_exit(0);
|
|
|
+#endif
|
|
|
}
|
|
|
|
|
|
void handleQuit(bool ask)
|