aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2009-07-20 09:19:27 +0000
committerPaul Gilbert2009-07-20 09:19:27 +0000
commitb40dc424b3ec2121b6cc62f3648d014f25583256 (patch)
tree6fb174f82dbbd6ced130637f665ed3e68215710a /engines
parent0e2f2673297431a4b1c47495de6db972c9ad033e (diff)
downloadscummvm-rg350-b40dc424b3ec2121b6cc62f3648d014f25583256.tar.gz
scummvm-rg350-b40dc424b3ec2121b6cc62f3648d014f25583256.tar.bz2
scummvm-rg350-b40dc424b3ec2121b6cc62f3648d014f25583256.zip
Bugfix for hangs on scene changes in Discworld 1 after having loaded a savegame from the GMM when the title screens are displayed
svn-id: r42626
Diffstat (limited to 'engines')
-rw-r--r--engines/tinsel/saveload.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/engines/tinsel/saveload.cpp b/engines/tinsel/saveload.cpp
index 62bcc732a8..efa6e0c8a8 100644
--- a/engines/tinsel/saveload.cpp
+++ b/engines/tinsel/saveload.cpp
@@ -84,6 +84,8 @@ extern void syncGlobInfo(Common::Serializer &s);
// in POLYGONS.C
extern void syncPolyInfo(Common::Serializer &s);
+extern int sceneCtr;
+
//----------------- LOCAL DEFINES --------------------
struct SaveGameHeader {
@@ -510,6 +512,10 @@ save_failure:
void ProcessSRQueue(void) {
switch (SRstate) {
case SR_DORESTORE:
+ // If a load has been done directly from title screens, set a larger value for scene ctr so the
+ // code used to skip the title screens in Discworld 1 gets properly disabled
+ if (sceneCtr < 10) sceneCtr = 10;
+
if (DoRestore()) {
DoRestoreScene(srsd, false);
}