From cfcf281b86ea412ae9c85475bc4ae20ccf47f651 Mon Sep 17 00:00:00 2001 From: Nicola Mettifogo Date: Mon, 9 Apr 2007 11:07:38 +0000 Subject: Cleanup of Zone/Animation removal code. Only the good god of void pointers knows how it managed to work until now. svn-id: r26430 --- engines/parallaction/saveload.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'engines/parallaction/saveload.cpp') 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); -- cgit v1.2.3