[Scummvm-cvs-logs] scummvm master -> 9ec9bca25b1cc7efaec4587d5c71c65eb66022cf

eriktorbjorn eriktorbjorn at telia.com
Mon Dec 28 11:06:25 CET 2015


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
fe47fec521 LAB: Free the remaining parts of _moveButtonList and _invButtonList
9ec9bca25b LAB: Fix small getFont() memory leak


Commit: fe47fec521134ce9997a15f89afe9e588b989c83
    https://github.com/scummvm/scummvm/commit/fe47fec521134ce9997a15f89afe9e588b989c83
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2015-12-28T11:05:36+01:00

Commit Message:
LAB: Free the remaining parts of _moveButtonList and _invButtonList

We can't use freeButtonList(), because apparently some of the button
images are shared between the two lists. At least, that's how I
understand it.

Changed paths:
    engines/lab/engine.cpp



diff --git a/engines/lab/engine.cpp b/engines/lab/engine.cpp
index cf6ae71..93b7cb4 100644
--- a/engines/lab/engine.cpp
+++ b/engines/lab/engine.cpp
@@ -141,6 +141,18 @@ void LabEngine::freeScreens() {
 		delete _invImages[imgIdx];
 		_invImages[imgIdx] = nullptr;
 	}
+
+	// We can't use freeButtonList() here, because some buttons are shared
+	// between the two lists.
+	for (ButtonList::iterator buttonIter = _moveButtonList.begin(); buttonIter != _moveButtonList.end(); ++buttonIter) {
+		delete *buttonIter;
+	}
+	_moveButtonList.clear();
+
+	for (ButtonList::iterator buttonIter = _invButtonList.begin(); buttonIter != _invButtonList.end(); ++buttonIter) {
+		delete *buttonIter;
+	}
+	_invButtonList.clear();
 }
 
 void LabEngine::perFlipButton(uint16 buttonId) {


Commit: 9ec9bca25b1cc7efaec4587d5c71c65eb66022cf
    https://github.com/scummvm/scummvm/commit/9ec9bca25b1cc7efaec4587d5c71c65eb66022cf
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2015-12-28T11:05:36+01:00

Commit Message:
LAB: Fix small getFont() memory leak

Changed paths:
    engines/lab/resource.cpp



diff --git a/engines/lab/resource.cpp b/engines/lab/resource.cpp
index ba42e9a..8883cef 100644
--- a/engines/lab/resource.cpp
+++ b/engines/lab/resource.cpp
@@ -70,6 +70,7 @@ TextFont *Resource::getFont(const Common::String fileName) {
 	dataFile->skip(4);
 	textfont->_data = new byte[textfont->_dataLength + 4];
 	dataFile->read(textfont->_data, textfont->_dataLength);
+	delete dataFile;
 	return textfont;
 }
 






More information about the Scummvm-git-logs mailing list