浏览代码

Workaround for mingw and armeabi Android build

Ivan Savenko 2 年之前
父节点
当前提交
873fd33e7a
共有 1 个文件被更改,包括 6 次插入0 次删除
  1. 6 0
      client/CMT.cpp

+ 6 - 0
client/CMT.cpp

@@ -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)