diff options
author | Martin Kiewitz | 2015-04-27 20:50:37 +0200 |
---|---|---|
committer | Martin Kiewitz | 2015-04-27 20:50:37 +0200 |
commit | 02dd8cffcc9e649c1cfc5bbcb5d2517c63f6f321 (patch) | |
tree | 41a386b01971ec37981c9b6aa5222cb0e544b013 /engines/sci | |
parent | 139bdec3ba3811e1dec00527caaba0d5c3fedcaa (diff) | |
download | scummvm-rg350-02dd8cffcc9e649c1cfc5bbcb5d2517c63f6f321.tar.gz scummvm-rg350-02dd8cffcc9e649c1cfc5bbcb5d2517c63f6f321.tar.bz2 scummvm-rg350-02dd8cffcc9e649c1cfc5bbcb5d2517c63f6f321.zip |
SCI: move SCI32 plane clear to gamestate_restore()
Diffstat (limited to 'engines/sci')
-rw-r--r-- | engines/sci/engine/savegame.cpp | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/engines/sci/engine/savegame.cpp b/engines/sci/engine/savegame.cpp index 3d934410c3..8fca7eabca 100644 --- a/engines/sci/engine/savegame.cpp +++ b/engines/sci/engine/savegame.cpp @@ -134,13 +134,6 @@ void SegManager::saveLoadWithSerializer(Common::Serializer &s) { // Reset _scriptSegMap, to be restored below _scriptSegMap.clear(); - -#ifdef ENABLE_SCI32 - // Clear any planes/screen items currently showing so they - // don't show up after the load. - if (getSciVersion() >= SCI_VERSION_2) - g_sci->_gfxFrameout->clear(); -#endif } s.skip(4, VER(14), VER(18)); // OBSOLETE: Used to be _exportsAreWide @@ -926,14 +919,17 @@ void gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) { // reset ports is one of the first things we do, because that may free() some hunk memory // and we don't want to do that after we read in the saved game hunk memory - if (ser.isLoading()) { - // reset ports - if (g_sci->_gfxPorts) - g_sci->_gfxPorts->reset(); - // clear screen - if (g_sci->_gfxScreen) - g_sci->_gfxScreen->clear(); - } + if (g_sci->_gfxPorts) + g_sci->_gfxPorts->reset(); + // clear screen + if (g_sci->_gfxScreen) + g_sci->_gfxScreen->clear(); +#ifdef ENABLE_SCI32 + // Also clear any SCI32 planes/screen items currently showing so they + // don't show up after the load. + if (getSciVersion() >= SCI_VERSION_2) + g_sci->_gfxFrameout->clear(); +#endif s->reset(true); s->saveLoadWithSerializer(ser); // FIXME: Error handling? |