fix "save prefs when exiting system menu"; when DelayedScreenLoad,

bWasOnSystemMenu was always false, because the screen was already
deleted
This commit is contained in:
Glenn Maynard
2005-06-19 09:40:16 +00:00
parent 8364c20850
commit 28fc7bcdad
+2 -3
View File
@@ -361,6 +361,8 @@ void ScreenManager::SetNewScreen( const CString &sScreenName )
void ScreenManager::LoadDelayedScreen()
{
const bool bWasOnSystemMenu = !m_ScreenStack.empty() && m_ScreenStack.back()->GetScreenType() == system_menu;
/*
* We have a screen to display. Delete the current screens and load it.
* If DelayedScreenLoad is true, clear the old screen first; this lowers
@@ -377,8 +379,6 @@ retry:
CString sScreenName = m_sDelayedScreen;
m_sDelayedScreen = "";
Screen* pOldTopScreen = m_ScreenStack.empty() ? NULL : m_ScreenStack.back();
//
// Search prepped screens to see if we already have this screen available.
@@ -428,7 +428,6 @@ retry:
m_sLastLoadedBackgroundPath = sNewBGA;
}
bool bWasOnSystemMenu = pOldTopScreen && pOldTopScreen->GetScreenType() == system_menu;
bool bIsOnSystemMenu = pNewScreen->GetScreenType() == system_menu;
// If we're exiting a system menu, persist settings in case we don't exit normally