[Scummvm-git-logs] scummvm master -> 0f118d0210d1dc1d4e4174fd72179de82b263ed8

antoniou79 a.antoniou79 at gmail.com
Sat Apr 3 11:04:03 UTC 2021


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:
271d0ca27d BLADERUNNER: Comment on potential script bug
0f118d0210 GRAPHICS: Tentative fix saveScreenshot() warning for OpenGL


Commit: 271d0ca27d5733de00d6d34a1590db816e323fdb
    https://github.com/scummvm/scummvm/commit/271d0ca27d5733de00d6d34a1590db816e323fdb
Author: antoniou79 (a.antoniou79 at gmail.com)
Date: 2021-04-03T14:03:36+03:00

Commit Message:
BLADERUNNER: Comment on potential script bug

It's more of an inconsistency than a bug that matters to gameplay

Changed paths:
    engines/bladerunner/script/ai/insect_dealer.cpp


diff --git a/engines/bladerunner/script/ai/insect_dealer.cpp b/engines/bladerunner/script/ai/insect_dealer.cpp
index 70eadb9bea..a897c3e30a 100644
--- a/engines/bladerunner/script/ai/insect_dealer.cpp
+++ b/engines/bladerunner/script/ai/insect_dealer.cpp
@@ -112,6 +112,10 @@ bool AIScriptInsectDealer::GoalChanged(int currentGoalNumber, int newGoalNumber)
 		Actor_Set_At_Waypoint(kActorInsectDealer, 40, 0);
 
 		if (!Game_Flag_Query(kFlagAR02DektoraBoughtScorpions)) {
+			// TODO A bug? Does it not matter if Dektora is retired at this point?
+			// Probably a safe inconsistency to allow (setting the flag), since in Act 5 (when Insect Dealer's goal becomes 400)
+			// it no longer matters if Dektora purchased the scorpions or not.
+			// But it still may confuse debugging and tracing of what actually happened looking at a save game.
 			Game_Flag_Set(kFlagAR02DektoraBoughtScorpions);
 #if BLADERUNNER_ORIGINAL_BUGS
 			Item_Remove_From_World(kItemScorpions);


Commit: 0f118d0210d1dc1d4e4174fd72179de82b263ed8
    https://github.com/scummvm/scummvm/commit/0f118d0210d1dc1d4e4174fd72179de82b263ed8
Author: antoniou79 (a.antoniou79 at gmail.com)
Date: 2021-04-03T14:03:36+03:00

Commit Message:
GRAPHICS: Tentative fix saveScreenshot() warning for OpenGL

Building for Android (OpenGL) had noisy warning for hiding overloaded virtual function

Added a dummy implementation in OpenGLGraphics manager, and also for OpenGLSdlGraphicsManager it now explicitly calls the SdlGraphicsManager implementation for the void argument signature.

Changed paths:
    backends/graphics/opengl/opengl-graphics.h
    backends/graphics/openglsdl/openglsdl-graphics.cpp
    backends/graphics/openglsdl/openglsdl-graphics.h


diff --git a/backends/graphics/opengl/opengl-graphics.h b/backends/graphics/opengl/opengl-graphics.h
index 772ecd101a..3b04004b69 100644
--- a/backends/graphics/opengl/opengl-graphics.h
+++ b/backends/graphics/opengl/opengl-graphics.h
@@ -265,6 +265,31 @@ protected:
 	 */
 	bool saveScreenshot(const Common::String &filename) const;
 
+	/**
+	 * @brief Dummy implementation of saveScreenshot() (ie. no file argument) for OpenGLGraphicsManager
+	 *
+	 * Currently we have a backend OpenGLSDLGraphicsManager, which inherits from both
+	 * OpenGLGraphicsManager and SdlGraphicsManager
+	 *
+	 * OpenGLSDLGraphicsManager "implements" saveScreenshot(const Common::String &filename) (can be overridden)
+	 * by calling the saveScreenshot(const Common::String &filename) of OpenGLGraphicsManager
+	 * and saveScreenshot() by calling saveScreenshot() of SdlGraphicsManager
+	 *
+	 * SdlGraphicsManager provides an implementation of saveScreenshot() (which can be overridden)
+	 * but a dummy implementation of saveScreenshot(const Common::String &filename)
+	 *
+	 * OpenGLGraphicsManager provides the implementation of saveScreenshot(const Common::String &filename)
+	 * but needs a (dummy) implementation of saveScreenshot() since OpenGLGraphicsManager inherits from GraphicsManager
+	 * This avoids the noisy warning (when building for OpenGL backend with no SDL support):
+	 * OpenGL::OpenGLGraphicsManager::saveScreenshot
+	 * hides overloaded virtual function
+	 * GraphicsManager::saveScreenshot
+	 *
+	*/
+	// TODO Maybe we should just unify these two method signatures in one
+	//      to avoid this mess
+	void saveScreenshot() override { return; }
+
 private:
 	//
 	// OpenGL utilities
diff --git a/backends/graphics/openglsdl/openglsdl-graphics.cpp b/backends/graphics/openglsdl/openglsdl-graphics.cpp
index f2c3fd6363..bfc19f5e14 100644
--- a/backends/graphics/openglsdl/openglsdl-graphics.cpp
+++ b/backends/graphics/openglsdl/openglsdl-graphics.cpp
@@ -362,6 +362,10 @@ bool OpenGLSdlGraphicsManager::saveScreenshot(const Common::String &filename) co
 	return OpenGLGraphicsManager::saveScreenshot(filename);
 }
 
+void OpenGLSdlGraphicsManager::saveScreenshot() {
+	SdlGraphicsManager::saveScreenshot();
+}
+
 bool OpenGLSdlGraphicsManager::setupMode(uint width, uint height) {
 	// In case we request a fullscreen mode we will use the mode the user
 	// has chosen last time or the biggest mode available.
diff --git a/backends/graphics/openglsdl/openglsdl-graphics.h b/backends/graphics/openglsdl/openglsdl-graphics.h
index 3f75fa7923..d83aec621a 100644
--- a/backends/graphics/openglsdl/openglsdl-graphics.h
+++ b/backends/graphics/openglsdl/openglsdl-graphics.h
@@ -59,6 +59,7 @@ protected:
 	virtual void handleResizeImpl(const int width, const int height, const int xdpi, const int ydpi) override;
 
 	virtual bool saveScreenshot(const Common::String &filename) const override;
+	void saveScreenshot() override;
 
 	virtual int getGraphicsModeScale(int mode) const override { return 1; }
 




More information about the Scummvm-git-logs mailing list