aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/saveload.cpp
diff options
context:
space:
mode:
authorNicola Mettifogo2007-04-09 11:07:38 +0000
committerNicola Mettifogo2007-04-09 11:07:38 +0000
commitcfcf281b86ea412ae9c85475bc4ae20ccf47f651 (patch)
treedb679fe3893560d063e90fb4b9fd0619aa25727c /engines/parallaction/saveload.cpp
parent41a5f70d72dd6a708b436c78e2fc58c88b9131ac (diff)
downloadscummvm-rg350-cfcf281b86ea412ae9c85475bc4ae20ccf47f651.tar.gz
scummvm-rg350-cfcf281b86ea412ae9c85475bc4ae20ccf47f651.tar.bz2
scummvm-rg350-cfcf281b86ea412ae9c85475bc4ae20ccf47f651.zip
Cleanup of Zone/Animation removal code. Only the good god of void pointers knows how it managed to work until now.
svn-id: r26430
Diffstat (limited to 'engines/parallaction/saveload.cpp')
-rw-r--r--engines/parallaction/saveload.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/engines/parallaction/saveload.cpp b/engines/parallaction/saveload.cpp
index 5ad54adeea..284ac9402c 100644
--- a/engines/parallaction/saveload.cpp
+++ b/engines/parallaction/saveload.cpp
@@ -81,14 +81,14 @@ void Parallaction::doLoadGame(uint16 slot) {
f->readLine(s, 15);
- // TODO (LIST): the very same code can be found in _c_finito().
- // Why aren't we clearing Animations too, anyway?
+ // TODO (LIST): unify (and parametrize) calls to freeZones.
+ // We aren't calling freeAnimations because it is not needed, since
+ // kChangeLocation will trigger a complete deletion. Anyway, we still
+ // need to invoke freeZones here with kEngineQuit set, because the
+ // call in changeLocation preserve certain zones.
_engineFlags |= kEngineQuit;
-
freeZones(_zones._next);
- freeNodeList(_zones._next);
_zones._next = NULL;
-
_engineFlags &= ~kEngineQuit;
_numLocations = atoi(s);