diff options
author | Dmitry Iskrich | 2016-06-29 19:24:12 +0300 |
---|---|---|
committer | Eugene Sandulenko | 2016-08-03 23:40:36 +0200 |
commit | b208b8e5fffc6a13277987d98400488c4d59d9c1 (patch) | |
tree | d989483eefaf6aa749714c523a8c075ac7770abe /engines/director/director.cpp | |
parent | aaf8448cbc0a282a1c28f0ef4d7c738c8b87ab3b (diff) | |
download | scummvm-rg350-b208b8e5fffc6a13277987d98400488c4d59d9c1.tar.gz scummvm-rg350-b208b8e5fffc6a13277987d98400488c4d59d9c1.tar.bz2 scummvm-rg350-b208b8e5fffc6a13277987d98400488c4d59d9c1.zip |
DIRECTOR: Fix memory corruption
Diffstat (limited to 'engines/director/director.cpp')
-rw-r--r-- | engines/director/director.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/engines/director/director.cpp b/engines/director/director.cpp index 10db492e59..9a22e675cb 100644 --- a/engines/director/director.cpp +++ b/engines/director/director.cpp @@ -395,14 +395,14 @@ void DirectorEngine::loadSharedCastsFrom(Common::String filename) { Common::SeekableSubReadStreamEndian *castStream = shardcst->getResource(MKTAG('V','W','C','R'), 1024); castScore->loadCastData(*castStream); - _sharedCasts = castScore->_casts; + *_sharedCasts = castScore->_casts; Common::Array<uint16> dib = shardcst->getResourceIDList(MKTAG('D','I','B',' ')); if (dib.size() != 0) { Common::Array<uint16>::iterator iterator; for (iterator = dib.begin(); iterator != dib.end(); ++iterator) { - _sharedDIB[*iterator] = shardcst->getResource(MKTAG('D','I','B',' '), *iterator); + _sharedDIB->setVal(*iterator, shardcst->getResource(MKTAG('D','I','B',' '), *iterator)); } } @@ -411,7 +411,7 @@ void DirectorEngine::loadSharedCastsFrom(Common::String filename) { if (stxt.size() != 0) { Common::Array<uint16>::iterator iterator; for (iterator = stxt.begin(); iterator != stxt.end(); ++iterator) { - _sharedSTXT[*iterator] = shardcst->getResource(MKTAG('S','T','X','T'), *iterator); + _sharedSTXT->setVal(*iterator, shardcst->getResource(MKTAG('S','T','X','T'), *iterator)); } } @@ -420,7 +420,7 @@ void DirectorEngine::loadSharedCastsFrom(Common::String filename) { if (stxt.size() != 0) { Common::Array<uint16>::iterator iterator; for (iterator = sound.begin(); iterator != sound.end(); ++iterator) { - _sharedSTXT[*iterator] = shardcst->getResource(MKTAG('S','N','D',' '), *iterator); + _sharedSound->setVal(*iterator, shardcst->getResource(MKTAG('S','N','D',' '), *iterator)); } } } |