aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorJohannes Schickel2011-11-01 16:25:04 +0100
committerJohannes Schickel2011-11-01 16:35:11 +0100
commit57ca48d5470eac957c9932c45ad8807d5545b771 (patch)
tree7bcd984ce197ee8e6528013d5790632d7657e1de /engines
parent5cc76e8d71cc3082b93c13cabf37f7306e4574e2 (diff)
downloadscummvm-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.cpp4
-rw-r--r--engines/kyra/sound_lol.cpp4
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);