aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippos Karapetis2013-06-09 16:08:40 +0300
committerFilippos Karapetis2013-06-09 16:08:40 +0300
commitf2d0f76939f713bfe4317798665e1ba004f122f3 (patch)
tree1a7205f8803ce7931c1ca70ec527c94ccdcb50e6
parenta14cb193a9d0cde8b6eb84c5193ba6944de1e6c4 (diff)
downloadscummvm-rg350-f2d0f76939f713bfe4317798665e1ba004f122f3.tar.gz
scummvm-rg350-f2d0f76939f713bfe4317798665e1ba004f122f3.tar.bz2
scummvm-rg350-f2d0f76939f713bfe4317798665e1ba004f122f3.zip
NEVERHOOD: Fix a memory leak when changing modules
-rw-r--r--engines/neverhood/gamemodule.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/engines/neverhood/gamemodule.cpp b/engines/neverhood/gamemodule.cpp
index 49682b0d29..db4d0ef374 100644
--- a/engines/neverhood/gamemodule.cpp
+++ b/engines/neverhood/gamemodule.cpp
@@ -440,6 +440,10 @@ void GameModule::checkRequests() {
void GameModule::createModule(int moduleNum, int which) {
debug("GameModule::createModule(%d, %d)", moduleNum, which);
_moduleNum = moduleNum;
+
+ if (_childObject)
+ delete _childObject;
+
switch (_moduleNum) {
case 1000:
setGlobalVar(V_MODULE_NAME, 0x03294419);