aboutsummaryrefslogtreecommitdiff
path: root/engines/director/director.cpp
diff options
context:
space:
mode:
authorDmitry Iskrich2016-06-29 19:24:12 +0300
committerEugene Sandulenko2016-08-03 23:40:36 +0200
commitb208b8e5fffc6a13277987d98400488c4d59d9c1 (patch)
treed989483eefaf6aa749714c523a8c075ac7770abe /engines/director/director.cpp
parentaaf8448cbc0a282a1c28f0ef4d7c738c8b87ab3b (diff)
downloadscummvm-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.cpp8
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));
}
}
}