[Scummvm-git-logs] scummvm master -> 54a3bcdae4c04b983b39a7d6c41fd6f19b2d1b53

djsrv dservilla at gmail.com
Wed Jun 24 01:22:52 UTC 2020


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:
54a3bcdae4 DIRECTOR: LINGO: Reset Lingo on quit


Commit: 54a3bcdae4c04b983b39a7d6c41fd6f19b2d1b53
    https://github.com/scummvm/scummvm/commit/54a3bcdae4c04b983b39a7d6c41fd6f19b2d1b53
Author: djsrv (dservilla at gmail.com)
Date: 2020-06-23T21:21:46-04:00

Commit Message:
DIRECTOR: LINGO: Reset Lingo on quit

This cleans up a ton of previously leaked memory.

Changed paths:
    engines/director/director.cpp
    engines/director/lingo/lingo.cpp
    engines/director/lingo/lingo.h


diff --git a/engines/director/director.cpp b/engines/director/director.cpp
index 27ebfda8a4..797add797d 100644
--- a/engines/director/director.cpp
+++ b/engines/director/director.cpp
@@ -280,9 +280,9 @@ Common::Error DirectorEngine::run() {
 
 			if (_sharedScore && _sharedScore->_movieArchive
 					&& _sharedScore->_movieArchive->getFileName().equalsIgnoreCase(_currentPath + _sharedCastFile)) {
-				_lingo->restartLingo(true);
+				_lingo->resetLingo(true);
 			} else {
-				_lingo->restartLingo(false);
+				_lingo->resetLingo(false);
 				loadSharedCastsFrom(_currentPath + _sharedCastFile);
 			}
 
diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp
index b0c434d676..42477e2ae9 100644
--- a/engines/director/lingo/lingo.cpp
+++ b/engines/director/lingo/lingo.cpp
@@ -174,6 +174,7 @@ Lingo::Lingo(DirectorEngine *vm) : _vm(vm) {
 }
 
 Lingo::~Lingo() {
+	resetLingo(false);
 	cleanupBuiltins();
 }
 
@@ -605,7 +606,7 @@ void Lingo::executeHandler(const Common::String &name) {
 	execute(_pc);
 }
 
-void Lingo::restartLingo(bool keepSharedCast) {
+void Lingo::resetLingo(bool keepSharedCast) {
 	debugC(3, kDebugLingoExec, "Resetting Lingo!");
 
 	for (int a = 0; a < 2; a++) {
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index cba18f9fbb..321cc8568a 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -350,7 +350,7 @@ public:
 	Lingo(DirectorEngine *vm);
 	~Lingo();
 
-	void restartLingo(bool keepSharedCast);
+	void resetLingo(bool keepSharedCast);
 
 	void addCode(const char *code, int archiveIndex, ScriptType type, uint16 id, const char *scriptName = nullptr);
 	ScriptContext *compileAnonymous(const char *code);




More information about the Scummvm-git-logs mailing list