diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/composer/composer.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/engines/composer/composer.cpp b/engines/composer/composer.cpp index 9e059a4a53..9b907765d0 100644 --- a/engines/composer/composer.cpp +++ b/engines/composer/composer.cpp @@ -421,7 +421,7 @@ void ComposerEngine::processAnimFrame() { case 4: if (entry.word10 && (!data || data != entry.word10)) { debug(4, "anim: erase sprite %d", entry.word10); - removeSprite(data, anim->_id); + removeSprite(entry.word10, anim->_id); } if (data) { uint16 x = anim->_stream->readUint16LE(); @@ -471,7 +471,7 @@ void ComposerEngine::removeSprite(uint16 id, uint16 animId) { for (Common::List<Sprite>::iterator i = _sprites.begin(); i != _sprites.end(); i++) { if (i->id != id) continue; - if (animId && i->animId != animId) + if (i->animId && animId && (i->animId != animId)) continue; i = _sprites.reverse_erase(i); return; |