diff options
author | Walter van Niftrik | 2010-01-01 23:48:22 +0000 |
---|---|---|
committer | Walter van Niftrik | 2010-01-01 23:48:22 +0000 |
commit | 205f7437ea668be302e22b278a106f27af23fabf (patch) | |
tree | b93b8fa5dc7996852b4dde908069da1041387197 /engines/sci/engine/seg_manager.cpp | |
parent | 137744c40c5e5ab717c364a113cf5e83ca104663 (diff) | |
download | scummvm-rg350-205f7437ea668be302e22b278a106f27af23fabf.tar.gz scummvm-rg350-205f7437ea668be302e22b278a106f27af23fabf.tar.bz2 scummvm-rg350-205f7437ea668be302e22b278a106f27af23fabf.zip |
SCI: Fix segfault in dual-language KQ5.
svn-id: r46864
Diffstat (limited to 'engines/sci/engine/seg_manager.cpp')
-rw-r--r-- | engines/sci/engine/seg_manager.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/engines/sci/engine/seg_manager.cpp b/engines/sci/engine/seg_manager.cpp index 4983d9b347..d68853a593 100644 --- a/engines/sci/engine/seg_manager.cpp +++ b/engines/sci/engine/seg_manager.cpp @@ -568,6 +568,13 @@ Object *Script::scriptObjInit(reg_t obj_pos) { return obj; } +void Script::scriptObjRemove(reg_t obj_pos) { + if (getSciVersion() < SCI_VERSION_1_1) + obj_pos.offset += 8; + + _objects.erase(obj_pos.toUint16()); +} + LocalVariables *SegManager::allocLocalsSegment(Script *scr, int count) { if (!count) { // No locals scr->_localsSegment = 0; |