diff options
author | Filippos Karapetis | 2010-11-27 18:46:12 +0000 |
---|---|---|
committer | Filippos Karapetis | 2010-11-27 18:46:12 +0000 |
commit | c76422412dbecb6ed898d7f93d00c78bf5bb3d93 (patch) | |
tree | fde2cf3686fd80756792e33d332f353c85fc1a05 /engines | |
parent | 0312235f67b681e6f6947272dbfc433b8142c97e (diff) | |
download | scummvm-rg350-c76422412dbecb6ed898d7f93d00c78bf5bb3d93.tar.gz scummvm-rg350-c76422412dbecb6ed898d7f93d00c78bf5bb3d93.tar.bz2 scummvm-rg350-c76422412dbecb6ed898d7f93d00c78bf5bb3d93.zip |
SCI: Compensate for buggy KQ5CD saved games (before r54510)
svn-id: r54513
Diffstat (limited to 'engines')
-rw-r--r-- | engines/sci/sci.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/engines/sci/sci.cpp b/engines/sci/sci.cpp index 35fdbe4ea7..43422b4ede 100644 --- a/engines/sci/sci.cpp +++ b/engines/sci/sci.cpp @@ -435,6 +435,8 @@ void SciEngine::patchGameSaveRestore(SegManager *segMan) { const Object *gameObject = segMan->getObject(_gameObjectAddress); const uint16 gameMethodCount = gameObject->getMethodCount(); const Object *gameSuperObject = segMan->getObject(_gameSuperClassAddress); + if (!gameSuperObject) + gameSuperObject = gameObject; // happens in KQ5CD, when loading saved games before r54510 const uint16 gameSuperMethodCount = gameSuperObject->getMethodCount(); reg_t methodAddress; const uint16 kernelCount = _kernel->getKernelNamesSize(); |