diff options
Diffstat (limited to 'engines/composer')
-rw-r--r-- | engines/composer/graphics.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/composer/graphics.cpp b/engines/composer/graphics.cpp index 32b9812f32..b95a6bc567 100644 --- a/engines/composer/graphics.cpp +++ b/engines/composer/graphics.cpp @@ -92,10 +92,12 @@ void ComposerEngine::loadAnimation(Animation *&anim, uint16 animId, int16 x, int Pipe *pipe = *j; if (!pipe->hasResource(ID_ANIM, animId)) continue; + stream = pipe->getResource(ID_ANIM, animId, false); // When loading from savegame, make sure we have the correct stream - if ((!size) || (stream->size() >= size)) break; + if ((!size) || (stream->size() >= size)) + break; stream = NULL; } @@ -107,10 +109,14 @@ void ComposerEngine::loadAnimation(Animation *&anim, uint16 animId, int16 x, int } Common::List<Library>::iterator j; for (j = _libraries.begin(); j != _libraries.end(); j++) { + if (!j->_archive->hasResource(ID_ANIM, animId)) + continue; + stream = j->_archive->getResource(ID_ANIM, animId); // When loading from savegame, make sure we have the correct stream - if ((!size) || (stream->size() >= size)) break; + if ((!size) || (stream->size() >= size)) + break; stream = NULL; } |