diff --git a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp index 2526a09566..79359537fd 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp +++ b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp @@ -21,6 +21,7 @@ static HANDLE g_hInstanceMutex; static bool g_bIsMultipleInstance = false; +bool g_bQuitting = false; ArchHooks_Win32::ArchHooks_Win32() @@ -41,6 +42,8 @@ ArchHooks_Win32::ArchHooks_Win32() g_bIsMultipleInstance = false; if( GetLastError() == ERROR_ALREADY_EXISTS ) g_bIsMultipleInstance = true; + + g_bQuitting = false; } ArchHooks_Win32::~ArchHooks_Win32() @@ -445,6 +448,16 @@ void ArchHooks_Win32::MountInitialFilesystems( const CString &sDirOfExecutable ) FILEMAN->Mount( "dir", sMyDocumentsDir + PRODUCT_ID + "/Screenshots", "/Screenshots" ); } +void ArchHooks_Win32::SetUserQuit() +{ + g_bQuitting = true; +} + +bool ArchHooks_Win32::UserQuit() +{ + return g_bQuitting; +} + /* * (c) 2003-2004 Glenn Maynard, Chris Danford * All rights reserved. diff --git a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h index cb371b48ca..58297aaf5c 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h +++ b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h @@ -24,6 +24,10 @@ public: void UnBoostPriority(); void SetupConcurrentRenderingThread(); void MountInitialFilesystems( const CString &sDirOfExecutable ); + bool UserQuit(); + + // Called by ArchHooks: + static void SetUserQuit(); private: void CheckVideoDriver();