diff options
author | Johannes Schickel | 2011-11-01 16:25:04 +0100 |
---|---|---|
committer | Johannes Schickel | 2011-11-01 16:35:11 +0100 |
commit | 57ca48d5470eac957c9932c45ad8807d5545b771 (patch) | |
tree | 7bcd984ce197ee8e6528013d5790632d7657e1de /engines | |
parent | 5cc76e8d71cc3082b93c13cabf37f7306e4574e2 (diff) | |
download | scummvm-rg350-57ca48d5470eac957c9932c45ad8807d5545b771.tar.gz scummvm-rg350-57ca48d5470eac957c9932c45ad8807d5545b771.tar.bz2 scummvm-rg350-57ca48d5470eac957c9932c45ad8807d5545b771.zip |
KYRA: Fix Common::List::erase usage.
Thanks to Tron for pointing that out.
Diffstat (limited to 'engines')
-rw-r--r-- | engines/kyra/sequences_lok.cpp | 4 | ||||
-rw-r--r-- | engines/kyra/sound_lol.cpp | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/engines/kyra/sequences_lok.cpp b/engines/kyra/sequences_lok.cpp index 2de0565a74..99ae2ad7b3 100644 --- a/engines/kyra/sequences_lok.cpp +++ b/engines/kyra/sequences_lok.cpp @@ -1322,7 +1322,7 @@ void KyraEngine_LoK::seq_playCredits() { _screen->copyRegion(0, 32, 0, 32, 320, 128, 4, 2, Screen::CR_NO_P_CHECK); bottom = 0; - for (CreditsLineList::iterator it = lines.begin(); it != lines.end(); ++it) { + for (CreditsLineList::iterator it = lines.begin(); it != lines.end();) { if (it->y < 0) { it = lines.erase(it); continue; @@ -1338,6 +1338,8 @@ void KyraEngine_LoK::seq_playCredits() { it->y--; if (it->y > bottom) bottom = it->y; + + ++it; } _screen->copyRegion(0, 32, 0, 32, 320, 128, 2, 0, Screen::CR_NO_P_CHECK); diff --git a/engines/kyra/sound_lol.cpp b/engines/kyra/sound_lol.cpp index efa844968d..968488eef3 100644 --- a/engines/kyra/sound_lol.cpp +++ b/engines/kyra/sound_lol.cpp @@ -98,12 +98,12 @@ bool LoLEngine::snd_playCharacterSpeech(int id, int8 speaker, int) { _speechList = newSpeechList; _activeVoiceFileTotalTime = 0; - for (SpeechList::iterator i = _speechList.begin(); i != _speechList.end(); ++i) { + for (SpeechList::iterator i = _speechList.begin(); i != _speechList.end();) { // Just in case any file loading failed: Remove the bad streams here. if (!*i) i = _speechList.erase(i); else - _activeVoiceFileTotalTime += (*i)->getLength().msecs(); + _activeVoiceFileTotalTime += (*i++)->getLength().msecs(); } _sound->playVoiceStream(*_speechList.begin(), &_speechHandle); |