aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Minecraft.Client/Windows64/Windows64_App.cpp4
-rw-r--r--Minecraft.Client/Windows64/Windows64_App.h2
-rw-r--r--Minecraft.Client/Windows64/Windows64_Minecraft.cpp2
3 files changed, 5 insertions, 3 deletions
diff --git a/Minecraft.Client/Windows64/Windows64_App.cpp b/Minecraft.Client/Windows64/Windows64_App.cpp
index a8b2d9cc..bba33cad 100644
--- a/Minecraft.Client/Windows64/Windows64_App.cpp
+++ b/Minecraft.Client/Windows64/Windows64_App.cpp
@@ -14,6 +14,7 @@ CConsoleMinecraftApp app;
CConsoleMinecraftApp::CConsoleMinecraftApp() : CMinecraftApp()
{
+ m_bShutdown = false;
}
void CConsoleMinecraftApp::SetRichPresenceContext(int iPad, int contextId)
@@ -26,8 +27,7 @@ void CConsoleMinecraftApp::StoreLaunchData()
}
void CConsoleMinecraftApp::ExitGame()
{
- // This is likely not the correct way to exit the game, but it will do for now
- ExitProcess(0);
+ m_bShutdown = true;
}
void CConsoleMinecraftApp::FatalLoadError()
{
diff --git a/Minecraft.Client/Windows64/Windows64_App.h b/Minecraft.Client/Windows64/Windows64_App.h
index 39351d55..de8f6d85 100644
--- a/Minecraft.Client/Windows64/Windows64_App.h
+++ b/Minecraft.Client/Windows64/Windows64_App.h
@@ -29,6 +29,8 @@ public:
// original code
virtual void TemporaryCreateGameStart();
+
+ bool m_bShutdown;
};
extern CConsoleMinecraftApp app;
diff --git a/Minecraft.Client/Windows64/Windows64_Minecraft.cpp b/Minecraft.Client/Windows64/Windows64_Minecraft.cpp
index 931e7f17..1bffe317 100644
--- a/Minecraft.Client/Windows64/Windows64_Minecraft.cpp
+++ b/Minecraft.Client/Windows64/Windows64_Minecraft.cpp
@@ -1034,7 +1034,7 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance,
}
#endif
MSG msg = {0};
- while( WM_QUIT != msg.message )
+ while( WM_QUIT != msg.message && !app.m_bShutdown)
{
if( PeekMessage( &msg, NULL, 0, 0, PM_REMOVE ) )
{