[Scummvm-git-logs] scummvm master -> f7e01073077d7444a58d4ef770e202dafacf2740

sev- sev at scummvm.org
Thu Nov 10 23:01:17 CET 2016


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

Summary:
f7e0107307 DIRECTOR: Plug several leaks


Commit: f7e01073077d7444a58d4ef770e202dafacf2740
    https://github.com/scummvm/scummvm/commit/f7e01073077d7444a58d4ef770e202dafacf2740
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2016-11-10T23:01:00+01:00

Commit Message:
DIRECTOR: Plug several leaks

Changed paths:
    engines/director/archive.cpp
    engines/director/lingo/lingo-code.cpp
    engines/director/score.cpp



diff --git a/engines/director/archive.cpp b/engines/director/archive.cpp
index 6e1da0c..ff97d3f 100644
--- a/engines/director/archive.cpp
+++ b/engines/director/archive.cpp
@@ -445,7 +445,7 @@ bool RIFXArchive::openStream(Common::SeekableReadStream *stream, uint32 startOff
 		debugC(2, kDebugLoading, "KEY*: index: %d id: %d resTag: %s", index, id, tag2str(resTag));
 
 		const Resource &res = resources[index];
-		debug(3, "Found RIFX resource: '%s' 0x%04x, %d @ 0x%08x (%d)", tag2str(resTag), id, res.size, res.offset, res.offset);
+		debug(3, "Found RIFX resource: '%s' id: 0x%04x, %d @ 0x%08x (%d)", tag2str(resTag), id, res.size, res.offset, res.offset);
 		_types[resTag][id] = res;
 	}
 
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index 37a333b..dd59776 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -729,6 +729,8 @@ void Lingo::c_repeatwithcode(void) {
 
 	if (!g_lingo->_returning)
 		g_lingo->_pc = end; /* next stmt */
+
+	delete counter;
 }
 
 void Lingo::c_exitRepeat(void) {
@@ -972,6 +974,8 @@ void Lingo::c_global() {
 	s->global = true;
 
 	g_lingo->_pc += g_lingo->calcStringAlignment(name.c_str());
+
+	delete s;
 }
 
 void Lingo::c_instance() {
diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index 66e5e2a..1c78745 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -842,13 +842,13 @@ void Score::loadFontMap(Common::SeekableSubReadStreamEndian &stream) {
 }
 
 Common::Rect Score::readRect(Common::ReadStreamEndian &stream) {
-	Common::Rect *rect = new Common::Rect();
-	rect->top = stream.readUint16();
-	rect->left = stream.readUint16();
-	rect->bottom = stream.readUint16();
-	rect->right = stream.readUint16();
+	Common::Rect rect;
+	rect.top = stream.readUint16();
+	rect.left = stream.readUint16();
+	rect.bottom = stream.readUint16();
+	rect.right = stream.readUint16();
 
-	return *rect;
+	return rect;
 }
 
 void Score::startLoop() {





More information about the Scummvm-git-logs mailing list