aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
diff options
context:
space:
mode:
authorMartin Kiewitz2015-04-26 15:50:12 +0200
committerMartin Kiewitz2015-04-26 15:50:12 +0200
commit031b9b8ced1007545099e0e6285ea4bbe1d3e97f (patch)
tree4fa74f3b9028aa51a98c72bbd274d7c5e526700b /engines/sci/engine
parent5f53b9255eb2799906c324ff0e2ad096092a5dec (diff)
downloadscummvm-rg350-031b9b8ced1007545099e0e6285ea4bbe1d3e97f.tar.gz
scummvm-rg350-031b9b8ced1007545099e0e6285ea4bbe1d3e97f.tar.bz2
scummvm-rg350-031b9b8ced1007545099e0e6285ea4bbe1d3e97f.zip
SCI: restore: clear screen when restoring
primarily to clear kPortrait graphics in kq6 when restoring during portrait animation
Diffstat (limited to 'engines/sci/engine')
-rw-r--r--engines/sci/engine/savegame.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/sci/engine/savegame.cpp b/engines/sci/engine/savegame.cpp
index e0c2833572..3d934410c3 100644
--- a/engines/sci/engine/savegame.cpp
+++ b/engines/sci/engine/savegame.cpp
@@ -41,6 +41,7 @@
#include "sci/graphics/helpers.h"
#include "sci/graphics/palette.h"
#include "sci/graphics/ports.h"
+#include "sci/graphics/screen.h"
#include "sci/parser/vocabulary.h"
#include "sci/sound/audio.h"
#include "sci/sound/music.h"
@@ -923,11 +924,15 @@ void gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) {
// We don't need the thumbnail here, so just read it and discard it
Graphics::skipThumbnail(*fh);
- // reset ports as one of the first things we do, because that may free() some hunk memory
+ // 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();
}
s->reset(true);