[Scummvm-cvs-logs] scummvm master -> 3b5e92d4f3ce587bb8fce0251fa62a4c25a5a6d9

bluegr bluegr at gmail.com
Wed Nov 7 17:12:26 CET 2012


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:
3b5e92d4f3 SCI: Fix bug #3575569 - "SCI: QFG1VGA: Palette/hue bug after loading"


Commit: 3b5e92d4f3ce587bb8fce0251fa62a4c25a5a6d9
    https://github.com/scummvm/scummvm/commit/3b5e92d4f3ce587bb8fce0251fa62a4c25a5a6d9
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2012-11-07T08:11:09-08:00

Commit Message:
SCI: Fix bug #3575569 - "SCI: QFG1VGA: Palette/hue bug after loading"

We make sure that any leftover palVary timers are removed when
loading. This is an edge case, but it won't hurt to remove these
timers just in case

Changed paths:
    engines/sci/engine/savegame.cpp
    engines/sci/graphics/palette.h



diff --git a/engines/sci/engine/savegame.cpp b/engines/sci/engine/savegame.cpp
index ff3f19b..2a39f24 100644
--- a/engines/sci/engine/savegame.cpp
+++ b/engines/sci/engine/savegame.cpp
@@ -878,6 +878,10 @@ void gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) {
 		}
 	}
 
+	// Remove the palVary effect timer, if there is one running currently.
+	// Fixes bug #3575569.
+	g_sci->_gfxPalette->palVaryRemoveTimer();
+
 	// We don't need the thumbnail here, so just read it and discard it
 	Graphics::skipThumbnail(*fh);
 
diff --git a/engines/sci/graphics/palette.h b/engines/sci/graphics/palette.h
index e974781..1ca1f2d 100644
--- a/engines/sci/graphics/palette.h
+++ b/engines/sci/graphics/palette.h
@@ -105,6 +105,8 @@ public:
 	byte findMacIconBarColor(byte r, byte g, byte b);
 	bool colorIsFromMacClut(byte index);
 
+	void palVaryRemoveTimer();
+
 #ifdef ENABLE_SCI32
 	bool loadClut(uint16 clutId);
 	byte matchClutColor(uint16 color);
@@ -114,7 +116,6 @@ public:
 private:
 	void palVaryInit();
 	void palVaryInstallTimer();
-	void palVaryRemoveTimer();
 	bool palVaryLoadTargetPalette(GuiResourceId resourceId);
 	static void palVaryCallback(void *refCon);
 	void palVaryIncreaseSignal();






More information about the Scummvm-git-logs mailing list