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

djsrv noreply at scummvm.org
Tue Jun 28 05:06:13 UTC 2022


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

Summary:
c38ac3ed1a DIRECTOR: LINGO: Add ignoreGlobal flag to Datum
158e33e64b DIRECTOR: LINGO: Set ignoreGlobal to true for XObjects
db3341e2f1 DIRECTOR: LINGO: Add tests for show/clearGlobals on XObjects


Commit: c38ac3ed1a2a44d055ea91e35ff85fa7691e06a1
    https://github.com/scummvm/scummvm/commit/c38ac3ed1a2a44d055ea91e35ff85fa7691e06a1
Author: djsrv (dservilla at gmail.com)
Date: 2022-06-28T00:05:23-05:00

Commit Message:
DIRECTOR: LINGO: Add ignoreGlobal flag to Datum

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


diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 810767f56a6..c8873e8e5d6 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -1660,7 +1660,11 @@ void LB::b_alert(int nargs) {
 }
 
 void LB::b_clearGlobals(int nargs) {
-	g_lingo->_globalvars.clear();
+	for (DatumHash::iterator it = g_lingo->_globalvars.begin(); it != g_lingo->_globalvars.end(); it++) {
+		if (!it->_value.ignoreGlobal) {
+			g_lingo->_globalvars.erase(it);
+		}
+	}
 }
 
 void LB::b_cursor(int nargs) {
@@ -1691,7 +1695,9 @@ void LB::b_showGlobals(int nargs) {
 	global_out += ver.asString() + "\n";
 	if (g_lingo->_globalvars.size()) {
 		for (auto it = g_lingo->_globalvars.begin(); it != g_lingo->_globalvars.end(); it++) {
-			global_out += it->_key + " = " + it->_value.asString() + "\n";
+			if (!it->_value.ignoreGlobal) {
+				global_out += it->_key + " = " + it->_value.asString() + "\n";
+			}
 		}
 	}
 	g_debugger->debugPrintf("%s", global_out.c_str());
diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp
index 9b1498f5445..afca5925aa2 100644
--- a/engines/director/lingo/lingo.cpp
+++ b/engines/director/lingo/lingo.cpp
@@ -622,6 +622,7 @@ Datum::Datum() {
 	type = VOID;
 	refCount = new int;
 	*refCount = 1;
+	ignoreGlobal = false;
 }
 
 Datum::Datum(const Datum &d) {
@@ -629,6 +630,7 @@ Datum::Datum(const Datum &d) {
 	u = d.u;
 	refCount = d.refCount;
 	*refCount += 1;
+	ignoreGlobal = false;
 }
 
 Datum& Datum::operator=(const Datum &d) {
@@ -639,6 +641,7 @@ Datum& Datum::operator=(const Datum &d) {
 		refCount = d.refCount;
 		*refCount += 1;
 	}
+	ignoreGlobal = false;
 	return *this;
 }
 
@@ -654,6 +657,7 @@ Datum::Datum(double val) {
 	type = FLOAT;
 	refCount = new int;
 	*refCount = 1;
+	ignoreGlobal = false;
 }
 
 Datum::Datum(const Common::String &val) {
@@ -661,6 +665,7 @@ Datum::Datum(const Common::String &val) {
 	type = STRING;
 	refCount = new int;
 	*refCount = 1;
+	ignoreGlobal = false;
 }
 
 Datum::Datum(AbstractObject *val) {
@@ -674,6 +679,7 @@ Datum::Datum(AbstractObject *val) {
 		refCount = new int;
 		*refCount = 1;
 	}
+	ignoreGlobal = false;
 }
 
 Datum::Datum(const CastMemberID &val) {
@@ -681,6 +687,7 @@ Datum::Datum(const CastMemberID &val) {
 	type = CASTREF;
 	refCount = new int;
 	*refCount = 1;
+	ignoreGlobal = false;
 }
 
 Datum::Datum(const Common::Rect &rect) {
@@ -690,6 +697,7 @@ Datum::Datum(const Common::Rect &rect) {
 	u.farr->arr.push_back(Datum(rect.top));
 	u.farr->arr.push_back(Datum(rect.right));
 	u.farr->arr.push_back(Datum(rect.bottom));
+	ignoreGlobal = false;
 }
 
 void Datum::reset() {
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 2a103adb211..779aa3882b8 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -147,6 +147,8 @@ struct Datum {	/* interpreter stack type */
 
 	int *refCount;
 
+	bool ignoreGlobal; // True if this Datum should be ignored by showGlobals and clearGlobals
+
 	Datum();
 	Datum(const Datum &d);
 	Datum& operator=(const Datum &d);


Commit: 158e33e64bc62aa7b8ab55c1548eb6535f5801cf
    https://github.com/scummvm/scummvm/commit/158e33e64bc62aa7b8ab55c1548eb6535f5801cf
Author: djsrv (dservilla at gmail.com)
Date: 2022-06-28T00:05:23-05:00

Commit Message:
DIRECTOR: LINGO: Set ignoreGlobal to true for XObjects

Changed paths:
    engines/director/lingo/lingo.cpp
    engines/director/lingo/lingo.h
    engines/director/lingo/xlibs/aiff.cpp
    engines/director/lingo/xlibs/applecdxobj.cpp
    engines/director/lingo/xlibs/barakeobj.cpp
    engines/director/lingo/xlibs/cdromxobj.cpp
    engines/director/lingo/xlibs/fileio.cpp
    engines/director/lingo/xlibs/flushxobj.cpp
    engines/director/lingo/xlibs/gpid.cpp
    engines/director/lingo/xlibs/jitdraw3.cpp
    engines/director/lingo/xlibs/jwxini.cpp
    engines/director/lingo/xlibs/labeldrvxobj.cpp
    engines/director/lingo/xlibs/memoryxobj.cpp
    engines/director/lingo/xlibs/miscx.cpp
    engines/director/lingo/xlibs/movemousexobj.cpp
    engines/director/lingo/xlibs/movutils.cpp
    engines/director/lingo/xlibs/orthoplayxobj.cpp
    engines/director/lingo/xlibs/palxobj.cpp
    engines/director/lingo/xlibs/popupmenuxobj.cpp
    engines/director/lingo/xlibs/serialportxobj.cpp
    engines/director/lingo/xlibs/soundjam.cpp
    engines/director/lingo/xlibs/videodiscxobj.cpp
    engines/director/lingo/xlibs/winxobj.cpp


diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp
index afca5925aa2..83b70ac7ea7 100644
--- a/engines/director/lingo/lingo.cpp
+++ b/engines/director/lingo/lingo.cpp
@@ -1513,4 +1513,9 @@ CastMemberID Lingo::resolveCastMember(const Datum &memberID, const Datum &castLi
 	return CastMemberID(-1, castLib.asInt());
 }
 
+void Lingo::exposeXObject(const char *name, Datum obj) {
+	_globalvars[name] = obj;
+	_globalvars[name].ignoreGlobal = true;
+}
+
 } // End of namespace Director
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 779aa3882b8..158654caad3 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -350,6 +350,7 @@ public:
 	Common::U32String evalChunkRef(const Datum &var);
 	Datum findVarV4(int varType, const Datum &id);
 	CastMemberID resolveCastMember(const Datum &memberID, const Datum &castLib);
+	void exposeXObject(const char *name, Datum obj);
 
 	int getAlignedType(const Datum &d1, const Datum &d2, bool numsOnly);
 
diff --git a/engines/director/lingo/xlibs/aiff.cpp b/engines/director/lingo/xlibs/aiff.cpp
index 85db50e111b..fc421306d53 100644
--- a/engines/director/lingo/xlibs/aiff.cpp
+++ b/engines/director/lingo/xlibs/aiff.cpp
@@ -71,7 +71,7 @@ void AiffXObj::open(int type) {
 	if (type == kXObj) {
 		AiffXObject::initMethods(xlibMethods);
 		AiffXObject *xobj = new AiffXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/applecdxobj.cpp b/engines/director/lingo/xlibs/applecdxobj.cpp
index 34a2ab351c9..352458423c4 100644
--- a/engines/director/lingo/xlibs/applecdxobj.cpp
+++ b/engines/director/lingo/xlibs/applecdxobj.cpp
@@ -108,7 +108,7 @@ void AppleCDXObj::open(int type) {
 	if (type == kXObj) {
 		AppleCDXObject::initMethods(xlibMethods);
 		AppleCDXObject *xobj = new AppleCDXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/barakeobj.cpp b/engines/director/lingo/xlibs/barakeobj.cpp
index 22f2b02814f..244cc0e5745 100644
--- a/engines/director/lingo/xlibs/barakeobj.cpp
+++ b/engines/director/lingo/xlibs/barakeobj.cpp
@@ -60,7 +60,7 @@ void BarakeObj::open(int type) {
 	if (type == kXObj) {
 		BarakeObject::initMethods(xlibMethods);
 		BarakeObject *xobj = new BarakeObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/cdromxobj.cpp b/engines/director/lingo/xlibs/cdromxobj.cpp
index a4e72ba3d21..231ec719400 100644
--- a/engines/director/lingo/xlibs/cdromxobj.cpp
+++ b/engines/director/lingo/xlibs/cdromxobj.cpp
@@ -153,7 +153,7 @@ void CDROMXObj::open(int type) {
 	if (type == kXObj) {
 		CDROMXObject::initMethods(xlibMethods);
 		CDROMXObject *xobj = new CDROMXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/fileio.cpp b/engines/director/lingo/xlibs/fileio.cpp
index a1a36a71254..b3ee01ff1f8 100644
--- a/engines/director/lingo/xlibs/fileio.cpp
+++ b/engines/director/lingo/xlibs/fileio.cpp
@@ -62,7 +62,7 @@ void FileIO::open(int type) {
 	if (type == kXObj) {
 		FileObject::initMethods(xlibMethods);
 		FileObject *xobj = new FileObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	} else if (type == kXtraObj) {
 		// TODO - Implement Xtra
 	}
diff --git a/engines/director/lingo/xlibs/flushxobj.cpp b/engines/director/lingo/xlibs/flushxobj.cpp
index 247b11315f8..717ba94c020 100644
--- a/engines/director/lingo/xlibs/flushxobj.cpp
+++ b/engines/director/lingo/xlibs/flushxobj.cpp
@@ -68,7 +68,7 @@ void FlushXObj::open(int type) {
 		FlushXObject::initMethods(xlibMethods);
 		FlushXObject *xobj = new FlushXObject(kXObj);
 		for (uint i = 0; xlibNames[i]; i++) {
-			g_lingo->_globalvars[xlibNames[i]] = xobj;
+			g_lingo->exposeXObject(xlibNames[i], xobj);
 		}
 	}
 }
diff --git a/engines/director/lingo/xlibs/gpid.cpp b/engines/director/lingo/xlibs/gpid.cpp
index 7cc3a242315..d754194f9b5 100644
--- a/engines/director/lingo/xlibs/gpid.cpp
+++ b/engines/director/lingo/xlibs/gpid.cpp
@@ -66,7 +66,7 @@ void GpidXObj::open(int type) {
 	if (type == kXObj) {
 		ProductIdXObject::initMethods(xlibMethods);
 		ProductIdXObject *xobj = new ProductIdXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/jitdraw3.cpp b/engines/director/lingo/xlibs/jitdraw3.cpp
index b3cac7f3357..d2e9b3828ed 100644
--- a/engines/director/lingo/xlibs/jitdraw3.cpp
+++ b/engines/director/lingo/xlibs/jitdraw3.cpp
@@ -93,7 +93,7 @@ void JITDraw3XObj::open(int type) {
 	if (type == kXObj) {
 		JITDraw3XObject::initMethods(xlibMethods);
 		JITDraw3XObject *xobj = new JITDraw3XObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/jwxini.cpp b/engines/director/lingo/xlibs/jwxini.cpp
index 4ac56f10343..ab710db8cf5 100644
--- a/engines/director/lingo/xlibs/jwxini.cpp
+++ b/engines/director/lingo/xlibs/jwxini.cpp
@@ -69,7 +69,7 @@ void JourneyWareXINIXObj::open(int type) {
    if (type == kXObj) {
 	   JourneyWareXINIXObject::initMethods(xlibMethods);
 	   JourneyWareXINIXObject *xobj = new JourneyWareXINIXObject(kXObj);
-	   g_lingo->_globalvars[xlibName] = xobj;
+	   g_lingo->exposeXObject(xlibName, xobj);
    }
 }
 
diff --git a/engines/director/lingo/xlibs/labeldrvxobj.cpp b/engines/director/lingo/xlibs/labeldrvxobj.cpp
index 36222f85284..c563c3f0d9a 100644
--- a/engines/director/lingo/xlibs/labeldrvxobj.cpp
+++ b/engines/director/lingo/xlibs/labeldrvxobj.cpp
@@ -59,7 +59,7 @@ void LabelDrvXObj::open(int type) {
 	if (type == kXObj) {
 		LabelDrvXObject::initMethods(xlibMethods);
 		LabelDrvXObject *xobj = new LabelDrvXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/memoryxobj.cpp b/engines/director/lingo/xlibs/memoryxobj.cpp
index 9d1841fa873..e48fedb87b7 100644
--- a/engines/director/lingo/xlibs/memoryxobj.cpp
+++ b/engines/director/lingo/xlibs/memoryxobj.cpp
@@ -74,7 +74,7 @@ void MemoryXObj::open(int type) {
 	if (type == kXObj) {
 		MemoryXObject::initMethods(xlibMethods);
 		MemoryXObject *xobj = new MemoryXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/miscx.cpp b/engines/director/lingo/xlibs/miscx.cpp
index d798d4647b7..0f15c3eefa9 100644
--- a/engines/director/lingo/xlibs/miscx.cpp
+++ b/engines/director/lingo/xlibs/miscx.cpp
@@ -84,7 +84,7 @@ void MiscX::open(int type) {
 	if (type == kXObj) {
 		MiscXObject::initMethods(xlibMethods);
 		MiscXObject *xobj = new MiscXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/movemousexobj.cpp b/engines/director/lingo/xlibs/movemousexobj.cpp
index d3fd83c4724..c71d6fc14d5 100644
--- a/engines/director/lingo/xlibs/movemousexobj.cpp
+++ b/engines/director/lingo/xlibs/movemousexobj.cpp
@@ -52,7 +52,7 @@ void MoveMouseXObj::open(int type) {
 	if (type == kXObj) {
 		MoveMouseXObject::initMethods(xlibMethods);
 		MoveMouseXObject *xobj = new MoveMouseXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	} else if (type == kXtraObj) {
 		// TODO - Implement Xtra
 	}
diff --git a/engines/director/lingo/xlibs/movutils.cpp b/engines/director/lingo/xlibs/movutils.cpp
index 855db1caf01..dd6c5cd1551 100644
--- a/engines/director/lingo/xlibs/movutils.cpp
+++ b/engines/director/lingo/xlibs/movutils.cpp
@@ -114,7 +114,7 @@ void MovUtilsXObj::open(int type) {
 	if (type == kXObj) {
 		MovieUtilsXObject::initMethods(xlibMethods);
 		MovieUtilsXObject *xobj = new MovieUtilsXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/orthoplayxobj.cpp b/engines/director/lingo/xlibs/orthoplayxobj.cpp
index e7204a6ec96..f2da3eeb281 100644
--- a/engines/director/lingo/xlibs/orthoplayxobj.cpp
+++ b/engines/director/lingo/xlibs/orthoplayxobj.cpp
@@ -121,7 +121,7 @@ void OrthoPlayXObj::open(int type) {
 	if (type == kXObj) {
 		OrthoPlayXObject::initMethods(xlibMethods);
 		OrthoPlayXObject *xobj = new OrthoPlayXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/palxobj.cpp b/engines/director/lingo/xlibs/palxobj.cpp
index 5662f4e64eb..f089c271d11 100644
--- a/engines/director/lingo/xlibs/palxobj.cpp
+++ b/engines/director/lingo/xlibs/palxobj.cpp
@@ -62,7 +62,7 @@ void PalXObj::open(int type) {
 	if (type == kXObj) {
 		PalXObject::initMethods(xlibMethods);
 		PalXObject *xobj = new PalXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/popupmenuxobj.cpp b/engines/director/lingo/xlibs/popupmenuxobj.cpp
index 4fbe5f0f5ab..e7b15198d08 100644
--- a/engines/director/lingo/xlibs/popupmenuxobj.cpp
+++ b/engines/director/lingo/xlibs/popupmenuxobj.cpp
@@ -74,7 +74,7 @@ void PopUpMenuXObj::open(int type) {
 	if (type == kXObj) {
 		PopUpMenuXObject::initMethods(xlibMethods);
 		PopUpMenuXObject *xobj = new PopUpMenuXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/serialportxobj.cpp b/engines/director/lingo/xlibs/serialportxobj.cpp
index 4cbb1cb048a..3d6c47ac848 100644
--- a/engines/director/lingo/xlibs/serialportxobj.cpp
+++ b/engines/director/lingo/xlibs/serialportxobj.cpp
@@ -60,7 +60,7 @@ void SerialPortXObj::open(int type) {
 	if (type == kXObj) {
 		SerialPortXObject::initMethods(xlibMethods);
 		SerialPortXObject *xobj = new SerialPortXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/soundjam.cpp b/engines/director/lingo/xlibs/soundjam.cpp
index 48320749f1e..becbb1fcb92 100644
--- a/engines/director/lingo/xlibs/soundjam.cpp
+++ b/engines/director/lingo/xlibs/soundjam.cpp
@@ -80,7 +80,7 @@ void SoundJam::open(int type) {
 	if (type == kXObj) {
 		SoundJamObject::initMethods(xlibMethods);
 		SoundJamObject *xobj = new SoundJamObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/videodiscxobj.cpp b/engines/director/lingo/xlibs/videodiscxobj.cpp
index 3b0ebca4faa..ddf8629e2cf 100644
--- a/engines/director/lingo/xlibs/videodiscxobj.cpp
+++ b/engines/director/lingo/xlibs/videodiscxobj.cpp
@@ -147,7 +147,7 @@ void VideodiscXObj::open(int type) {
 	if (type == kXObj) {
 		VideodiscXObject::initMethods(xlibMethods);
 		VideodiscXObject *xobj = new VideodiscXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 
diff --git a/engines/director/lingo/xlibs/winxobj.cpp b/engines/director/lingo/xlibs/winxobj.cpp
index 02162243777..e00992604e2 100644
--- a/engines/director/lingo/xlibs/winxobj.cpp
+++ b/engines/director/lingo/xlibs/winxobj.cpp
@@ -242,7 +242,7 @@ void RearWindowXObj::open(int type) {
 	if (type == kXObj) {
 		RearWindowXObject::initMethods(xlibMethods);
 		RearWindowXObject *xobj = new RearWindowXObject(kXObj);
-		g_lingo->_globalvars[xlibName] = xobj;
+		g_lingo->exposeXObject(xlibName, xobj);
 	}
 }
 


Commit: db3341e2f1b1f988dc809485432c3db1d66a0655
    https://github.com/scummvm/scummvm/commit/db3341e2f1b1f988dc809485432c3db1d66a0655
Author: djsrv (dservilla at gmail.com)
Date: 2022-06-28T00:05:24-05:00

Commit Message:
DIRECTOR: LINGO: Add tests for show/clearGlobals on XObjects

Changed paths:
    engines/director/lingo/tests/XObjects.lingo


diff --git a/engines/director/lingo/tests/XObjects.lingo b/engines/director/lingo/tests/XObjects.lingo
index a4f69f527f9..b4e0dde762d 100644
--- a/engines/director/lingo/tests/XObjects.lingo
+++ b/engines/director/lingo/tests/XObjects.lingo
@@ -21,3 +21,17 @@ scummVMAssert(objectp(FlushXObj) = 0)
 scummVMAssert(objectp(RearWindow) = 1)
 closeXlib()
 scummVMAssert(objectp(RearWindow) = 0)
+
+-- test showGlobals and clearGlobals on XObjects
+clearGlobals()
+openXLib("FileIO")
+scummVMAssert(objectp(FileIO))
+
+showGlobals() -- FileIO should not be listed
+clearGlobals()
+scummVMAssert(objectp(FileIO)) -- FileIO should not be cleared
+
+set FileIO = "test"
+showGlobals() -- FileIO should be listed
+clearGlobals()
+scummVMAssert(voidp(FileIO)) -- FileIO should be cleared




More information about the Scummvm-git-logs mailing list