From af30671c12b8d514897a6226af354cd6d0d28ea7 Mon Sep 17 00:00:00 2001 From: aquanull Date: Mon, 3 Jun 2013 21:13:17 +0800 Subject: [PATCH] Exit from UI Menu Screen better. Fix crash under debugging if Pause Screen has ever been used. --- UI/MenuScreens.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/UI/MenuScreens.cpp b/UI/MenuScreens.cpp index 1468ecf418..232c969d8c 100644 --- a/UI/MenuScreens.cpp +++ b/UI/MenuScreens.cpp @@ -19,16 +19,9 @@ #include #include -#ifdef _WIN32 -namespace MainWindow { - void BrowseAndBoot(std::string defaultPath); -} - -#pragma execution_character_set("utf-8") -#endif - #ifdef _MSC_VER #define snprintf _snprintf +#pragma execution_character_set("utf-8") #endif #include "base/display.h" @@ -72,6 +65,13 @@ namespace MainWindow { #include #endif +#ifdef _WIN32 +namespace MainWindow { + extern HWND hwndMain; + void BrowseAndBoot(std::string defaultPath); +} +#endif + #if !defined(nullptr) #define nullptr NULL #endif @@ -251,12 +251,12 @@ void MenuScreen::render() { } if (UIButton(GEN_ID, vlinear, w, 0, m->T("Exit"), ALIGN_RIGHT)) { - // TODO: Save when setting changes, rather than when we quit - NativeShutdown(); // TODO: Need a more elegant way to quit #ifdef _WIN32 - ExitProcess(0); + PostMessage(MainWindow::hwndMain, WM_CLOSE, 0, 0); #else + // TODO: Save when setting changes, rather than when we quit + NativeShutdown(); exit(0); #endif }