aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2012-10-28 17:54:34 +1100
committerPaul Gilbert2012-10-28 17:54:34 +1100
commit1dff18f4b9fd77d5aaf90c37eca0f22e4368eb26 (patch)
tree17874a121305c7763946317cf6934927f2468829
parent367f0aac7ed8c205deb6294ceb8b2367118fbc04 (diff)
downloadscummvm-rg350-1dff18f4b9fd77d5aaf90c37eca0f22e4368eb26.tar.gz
scummvm-rg350-1dff18f4b9fd77d5aaf90c37eca0f22e4368eb26.tar.bz2
scummvm-rg350-1dff18f4b9fd77d5aaf90c37eca0f22e4368eb26.zip
HOPKINS: Fix crash when returning from conversation cut-scene in scene 5
-rw-r--r--engines/hopkins/objects.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/hopkins/objects.cpp b/engines/hopkins/objects.cpp
index 008ef7a9e3..d63ee39f40 100644
--- a/engines/hopkins/objects.cpp
+++ b/engines/hopkins/objects.cpp
@@ -4264,8 +4264,10 @@ void ObjectsManager::SPECIAL_JEU() {
if (!_vm->_globals.CENSURE) {
v1 = _vm->_globals.dos_malloc2(0x3E8u);
memcpy(v1, _vm->_graphicsManager.Palette, 0x301u);
+
_vm->_fileManager.CONSTRUIT_LINUX("TEMP1.SCR");
_vm->_saveLoadManager.SAUVE_FICHIER(_vm->_globals.NFICHIER, _vm->_graphicsManager.VESA_SCREEN, 0x4B000u);
+
if (!_vm->_graphicsManager.nbrligne)
_vm->_graphicsManager.ofscroll = 0;
_vm->_graphicsManager.NB_SCREEN();
@@ -4279,8 +4281,10 @@ void ObjectsManager::SPECIAL_JEU() {
_vm->_globals.NECESSAIRE = 1;
_vm->_graphicsManager.NB_SCREEN();
_vm->_globals.NECESSAIRE = 0;
+
_vm->_fileManager.CONSTRUIT_LINUX("TEMP1.SCR");
- _vm->_fileManager.bload(_vm->_globals.NFICHIER, _vm->_graphicsManager.VESA_SCREEN);
+ _vm->_saveLoadManager.bload(_vm->_globals.NFICHIER, _vm->_graphicsManager.VESA_SCREEN);
+
PERSO_ON = 0;
memcpy(_vm->_graphicsManager.Palette, v1, 0x301u);
_vm->_graphicsManager.SHOW_PALETTE();