[Scummvm-git-logs] scummvm branch-2-9 -> 656df4e53457eff775d04039f6eff0780a6f1756

bluegr noreply at scummvm.org
Sun Nov 17 02:06:41 UTC 2024


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

Summary:
f10c94d05e AGS: Fix call_function signature
6dcd44ce53 DGDS: Silence -Wpedantic warning about extra ';'
a79ad824f6 QDENGINE: Silence -Wpedantic warning about extra ';'
656df4e534 WINTERMUTE: Turn off saving game state while playing bink videos


Commit: f10c94d05e966136ee20b05ba9950e805bef5460
    https://github.com/scummvm/scummvm/commit/f10c94d05e966136ee20b05ba9950e805bef5460
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2024-11-17T04:02:58+02:00

Commit Message:
AGS: Fix call_function signature

call_function returns from PluginMethod::operator() which returns a
NumberPtr.
Its two calls also expect a NumberPtr but the function returned an int.
This should fix bug #13557.

Changed paths:
    engines/ags/engine/script/script_runtime.cpp
    engines/ags/engine/script/script_runtime.h


diff --git a/engines/ags/engine/script/script_runtime.cpp b/engines/ags/engine/script/script_runtime.cpp
index eabef048631..78b88711341 100644
--- a/engines/ags/engine/script/script_runtime.cpp
+++ b/engines/ags/engine/script/script_runtime.cpp
@@ -130,7 +130,7 @@ void ccSetDebugHook(new_line_hook_type jibble) {
 	_G(new_line_hook) = jibble;
 }
 
-int call_function(const Plugins::PluginMethod &method, const RuntimeScriptValue *object, int numparm, const RuntimeScriptValue *parms) {
+NumberPtr call_function(const Plugins::PluginMethod &method, const RuntimeScriptValue *object, int numparm, const RuntimeScriptValue *parms) {
 	if (!method) {
 		cc_error("invalid method in call_function");
 		return -1;
diff --git a/engines/ags/engine/script/script_runtime.h b/engines/ags/engine/script/script_runtime.h
index d96b0f5227b..a6a44069a51 100644
--- a/engines/ags/engine/script/script_runtime.h
+++ b/engines/ags/engine/script/script_runtime.h
@@ -102,7 +102,7 @@ void ccSetScriptAliveTimer(unsigned sys_poll_timeout, unsigned abort_timeout, un
 // reset the current while loop counter
 void ccNotifyScriptStillAlive();
 // for calling exported plugin functions old-style
-int call_function(const Plugins::PluginMethod &method, const RuntimeScriptValue *object, int numparm, const RuntimeScriptValue *parms);
+NumberPtr call_function(const Plugins::PluginMethod &method, const RuntimeScriptValue *object, int numparm, const RuntimeScriptValue *parms);
 
 } // namespace AGS3
 


Commit: 6dcd44ce53c36b1521cc7ed6af1f5c9fdcf0f623
    https://github.com/scummvm/scummvm/commit/6dcd44ce53c36b1521cc7ed6af1f5c9fdcf0f623
Author: Donovan Watteau (contrib at dwatteau.fr)
Date: 2024-11-17T04:04:26+02:00

Commit Message:
DGDS: Silence -Wpedantic warning about extra ';'

Changed paths:
    engines/dgds/drawing.h


diff --git a/engines/dgds/drawing.h b/engines/dgds/drawing.h
index 145ebc1f9b6..3636da7c893 100644
--- a/engines/dgds/drawing.h
+++ b/engines/dgds/drawing.h
@@ -36,7 +36,7 @@ namespace Drawing {
 	void filledCircle(int x, int y, int xr, int yr, Graphics::ManagedSurface *dst, byte fgcol, byte bgcol);
 	void emptyCircle(int x, int y, int xr, int yr, Graphics::ManagedSurface *dst, byte fgcol);
 
-};
+}
 
 } // end namespace Dgds
 


Commit: a79ad824f6c7b71c61f2d7960e6cf967588a50f2
    https://github.com/scummvm/scummvm/commit/a79ad824f6c7b71c61f2d7960e6cf967588a50f2
Author: Donovan Watteau (contrib at dwatteau.fr)
Date: 2024-11-17T04:04:26+02:00

Commit Message:
QDENGINE: Silence -Wpedantic warning about extra ';'

Changed paths:
    engines/qdengine/qdcore/qd_minigame_interface.h


diff --git a/engines/qdengine/qdcore/qd_minigame_interface.h b/engines/qdengine/qdcore/qd_minigame_interface.h
index 1f5617bb262..7a1ad8f43d2 100644
--- a/engines/qdengine/qdcore/qd_minigame_interface.h
+++ b/engines/qdengine/qdcore/qd_minigame_interface.h
@@ -25,7 +25,7 @@
 namespace Common {
 class ReadStream;
 class WriteStream;
-};
+}
 
 namespace QDEngine {
 


Commit: 656df4e53457eff775d04039f6eff0780a6f1756
    https://github.com/scummvm/scummvm/commit/656df4e53457eff775d04039f6eff0780a6f1756
Author: Paweł Kołodziejski (aquadran at gmail.com)
Date: 2024-11-17T04:05:28+02:00

Commit Message:
WINTERMUTE: Turn off saving game state while playing bink videos

Changed paths:
    engines/wintermute/ext/wme_vlink.cpp
    engines/wintermute/wintermute.cpp
    engines/wintermute/wintermute.h


diff --git a/engines/wintermute/ext/wme_vlink.cpp b/engines/wintermute/ext/wme_vlink.cpp
index ecb95eb2790..439dae273f2 100644
--- a/engines/wintermute/ext/wme_vlink.cpp
+++ b/engines/wintermute/ext/wme_vlink.cpp
@@ -101,6 +101,7 @@ bool SXVlink::scCallMethod(ScScript *script, ScStack *stack, ScStack *thisStack,
 
 #ifdef USE_BINK
 		_gameRef->freeze();
+		((WintermuteEngine *)g_engine)->savingEnable(false);
 
 		Common::SeekableReadStream *file = BaseFileManager::getEngineInstance()->openFile(path);
 		if (file) {
@@ -167,6 +168,7 @@ bool SXVlink::scCallMethod(ScScript *script, ScStack *stack, ScStack *thisStack,
 			BaseFileManager::getEngineInstance()->closeFile(file);
 		}
 
+		((WintermuteEngine *)g_engine)->savingEnable(true);
 		_gameRef->unfreeze();
 #else
 		warning("SXVlink::Play(%s) Bink playback not compiled in", path);
diff --git a/engines/wintermute/wintermute.cpp b/engines/wintermute/wintermute.cpp
index 7906e174998..08aeb08d0d3 100644
--- a/engines/wintermute/wintermute.cpp
+++ b/engines/wintermute/wintermute.cpp
@@ -105,6 +105,8 @@ Common::Error WintermuteEngine::run() {
 	_debugger = new Console(this);
 	setDebugger(_debugger);
 
+	_savingEnabled = true;
+
 //	DebugMan.enableDebugChannel("enginelog");
 	debugC(1, kWintermuteDebugLog, "Engine Debug-LOG enabled");
 	debugC(2, kWintermuteDebugSaveGame , "Savegame debugging-enabled");
@@ -342,13 +344,21 @@ Common::Error WintermuteEngine::saveGameState(int slot, const Common::String &de
 }
 
 bool WintermuteEngine::canSaveGameStateCurrently(Common::U32String *msg) {
-	return true;
+	return _savingEnabled;
 }
 
 bool WintermuteEngine::canLoadGameStateCurrently(Common::U32String *msg) {
 	return true;
 }
 
+bool WintermuteEngine::canSaveAutosaveCurrently() {
+	return _savingEnabled;
+}
+
+void WintermuteEngine::savingEnable(bool enable) {
+	_savingEnabled = enable;
+}
+
 bool WintermuteEngine::getGameInfo(const Common::FSList &fslist, Common::String &name, Common::String &caption) {
 	bool retVal = false;
 	caption = name = "(invalid)";
diff --git a/engines/wintermute/wintermute.h b/engines/wintermute/wintermute.h
index 0b752382df6..3134d0e99e3 100644
--- a/engines/wintermute/wintermute.h
+++ b/engines/wintermute/wintermute.h
@@ -63,6 +63,8 @@ public:
 	bool canLoadGameStateCurrently(Common::U32String *msg = nullptr) override;
 	Common::Error saveGameState(int slot, const Common::String &desc, bool isAutosave = false) override;
 	bool canSaveGameStateCurrently(Common::U32String *msg = nullptr) override;
+	bool canSaveAutosaveCurrently() override;
+	void savingEnable(bool enable);
 	// For detection-purposes:
 	static bool getGameInfo(const Common::FSList &fslist, Common::String &name, Common::String &caption);
 private:
@@ -73,6 +75,7 @@ private:
 	BaseGame *_game;
 	Wintermute::DebuggerController *_dbgController;
 	const WMEGameDescription *_gameDescription;
+	bool _savingEnabled{};
 
 	friend class Console;
 	friend class DebuggerController;




More information about the Scummvm-git-logs mailing list