[Scummvm-cvs-logs] SF.net SVN: scummvm: [32675] scummvm/branches/gsoc2008-rtl/engines/lure

cpage88 at users.sourceforge.net cpage88 at users.sourceforge.net
Thu Jun 12 20:11:09 CEST 2008


Revision: 32675
          http://scummvm.svn.sourceforge.net/scummvm/?rev=32675&view=rev
Author:   cpage88
Date:     2008-06-12 11:11:09 -0700 (Thu, 12 Jun 2008)

Log Message:
-----------
LURE: Fixed memory leaks in the LURE engine

Modified Paths:
--------------
    scummvm/branches/gsoc2008-rtl/engines/lure/lure.cpp
    scummvm/branches/gsoc2008-rtl/engines/lure/sound.cpp

Modified: scummvm/branches/gsoc2008-rtl/engines/lure/lure.cpp
===================================================================
--- scummvm/branches/gsoc2008-rtl/engines/lure/lure.cpp	2008-06-12 17:40:13 UTC (rev 32674)
+++ scummvm/branches/gsoc2008-rtl/engines/lure/lure.cpp	2008-06-12 18:11:09 UTC (rev 32675)
@@ -103,6 +103,7 @@
 	if (_initialised) {
 		// Delete and deinitialise subsystems
 		Surface::deinitialise();
+		Sound.destroy();
 		delete _fights;
 		delete _room;
 		delete _menu;
@@ -164,14 +165,6 @@
 	}
 }
 
-/* This is not being used
-
-void LureEngine::quitGame() {
-	_system->quit();
-}
-
-*/
-
 const char *LureEngine::generateSaveName(int slotNumber) {
 	static char buffer[15];
 

Modified: scummvm/branches/gsoc2008-rtl/engines/lure/sound.cpp
===================================================================
--- scummvm/branches/gsoc2008-rtl/engines/lure/sound.cpp	2008-06-12 17:40:13 UTC (rev 32674)
+++ scummvm/branches/gsoc2008-rtl/engines/lure/sound.cpp	2008-06-12 18:11:09 UTC (rev 32675)
@@ -85,8 +85,10 @@
 	if (_soundData)
 		delete _soundData;
 
-	if (_driver)
+	if (_driver) {
 		_driver->close();
+		delete _driver;
+	}
 	_driver = NULL;
 
 	g_system->deleteMutex(_soundMutex);
@@ -143,7 +145,7 @@
 	Room &room = Room::getReference();
 
 	RoomData *roomData = res.getRoom(room.roomNumber());
-	if (roomData->areaFlag != res.fieldList().getField(AREA_FLAG)) {
+	if (roomData && roomData->areaFlag != res.fieldList().getField(AREA_FLAG)) {
 		res.fieldList().setField(AREA_FLAG, roomData->areaFlag);
 
 		switch (roomData->areaFlag) {


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list