diff options
-rw-r--r-- | engines/sci/engine/savegame.cpp | 4 | ||||
-rw-r--r-- | engines/sci/graphics/palette.h | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/engines/sci/engine/savegame.cpp b/engines/sci/engine/savegame.cpp index ff3f19b53d..2a39f24ecd 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 e974781d49..1ca1f2dbb7 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(); |