From e1dae4bf04b3ff3ee4804577e8316546f5884fc0 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 13 Jul 2005 06:49:30 +0000 Subject: [PATCH] dumb fix --- stepmania/src/ScreenManager.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/stepmania/src/ScreenManager.cpp b/stepmania/src/ScreenManager.cpp index 08b4316a94..ba3d0d31f3 100644 --- a/stepmania/src/ScreenManager.cpp +++ b/stepmania/src/ScreenManager.cpp @@ -215,10 +215,15 @@ void ScreenManager::Update( float fDeltaTime ) /* Don't call BackgroundPrepareScreen() from within another background load. */ ASSERT( !IsConcurrentlyLoading() ); - /* Push rendering into a thread, and prepare the screen. */ + CString sScreenName = m_sDelayedConcurrentPrepare; + m_sDelayedConcurrentPrepare = ""; + + ScreenMessage SM = m_OnDonePreparingScreen; + m_OnDonePreparingScreen = SM_None; + g_bIsConcurrentlyLoading = true; StartConcurrentRendering(); - PrepareScreen( m_sDelayedConcurrentPrepare ); + PrepareScreen( sScreenName ); FinishConcurrentRendering(); g_bIsConcurrentlyLoading = false; @@ -226,9 +231,6 @@ void ScreenManager::Update( float fDeltaTime ) /* We're done. Send the message. The screen is allowed to start * another concurrent prepare from this message. */ - ScreenMessage SM = m_OnDonePreparingScreen; - m_sDelayedConcurrentPrepare = ""; - m_OnDonePreparingScreen = SM_None; SendMessageToTopScreen( SM ); } }