aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorAlyssa Milburn2011-07-15 23:43:13 +0200
committerAlyssa Milburn2011-07-15 23:43:13 +0200
commitf396e77cacdea88214baada40ce464b2baabdfa1 (patch)
tree9cafd1bc06feb517648e562e834035fd7574c4a9 /engines
parentf81010887fe498e2b8275aa5a82dd84547f0a264 (diff)
downloadscummvm-rg350-f396e77cacdea88214baada40ce464b2baabdfa1.tar.gz
scummvm-rg350-f396e77cacdea88214baada40ce464b2baabdfa1.tar.bz2
scummvm-rg350-f396e77cacdea88214baada40ce464b2baabdfa1.zip
COMPOSER: Fix removeSprite behaviour.
Diffstat (limited to 'engines')
-rw-r--r--engines/composer/composer.cpp4
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;