From d9792f2b3108bb7fe768c34bc078640772843ed7 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Mon, 30 Aug 2004 22:14:25 +0000 Subject: [PATCH] "this will always succeed" might not: mapOldStepsToStepsID only contains steps for pSong (fixes some crashes after reverting in course mode and then going on to eval) --- stepmania/src/SongManager.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/stepmania/src/SongManager.cpp b/stepmania/src/SongManager.cpp index dd7c141554..568fe4aefc 100644 --- a/stepmania/src/SongManager.cpp +++ b/stepmania/src/SongManager.cpp @@ -735,9 +735,12 @@ void SongManager::RevertFromDisk( Song *pSong, bool bAllowNotesLoss ) #define CONVERT_STEPS_POINTER( pSteps ) { \ - StepsID id = mapOldStepsToStepsID[pSteps]; /* this will always succeed */ \ - pSteps = id.ToSteps( pSong, bAllowNotesLoss ); } - + if( pSteps != NULL ) { \ + map::iterator it = mapOldStepsToStepsID.find(pSteps); \ + if( it != mapOldStepsToStepsID.end() ) \ + pSteps = it->second.ToSteps( pSong, bAllowNotesLoss ); \ + } \ +} FOREACH_PlayerNumber( p )