[Scummvm-cvs-logs] SF.net SVN: scummvm:[34024] scummvm/branches/branch-0-12-0/engines/saga/ saga.cpp

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Tue Aug 19 10:50:57 CEST 2008


Revision: 34024
          http://scummvm.svn.sourceforge.net/scummvm/?rev=34024&view=rev
Author:   thebluegr
Date:     2008-08-19 08:50:56 +0000 (Tue, 19 Aug 2008)

Log Message:
-----------
(backport) Fix for bug #2057194 - "IHNM: -x option crashes ScummVM, if savegame doesn't exist"

Modified Paths:
--------------
    scummvm/branches/branch-0-12-0/engines/saga/saga.cpp

Modified: scummvm/branches/branch-0-12-0/engines/saga/saga.cpp
===================================================================
--- scummvm/branches/branch-0-12-0/engines/saga/saga.cpp	2008-08-19 08:49:53 UTC (rev 34023)
+++ scummvm/branches/branch-0-12-0/engines/saga/saga.cpp	2008-08-19 08:50:56 UTC (rev 34024)
@@ -255,13 +255,20 @@
 			_interface->addToInventory(_actor->objIndexToId(0));	// Magic hat
 		_scene->changeScene(ConfMan.getInt("boot_param"), 0, kTransitionNoFade);
 	} else if (ConfMan.hasKey("save_slot")) {
+		// Init the current chapter to 8 (character selection) for IHNM
+		if (getGameType() == GType_IHNM)
+			_scene->changeScene(-2, 0, kTransitionFade, 8);
+
 		// First scene sets up palette
 		_scene->changeScene(getStartSceneNumber(), 0, kTransitionNoFade);
 		_events->handleEvents(0); // Process immediate events
 
-		_interface->setMode(kPanelMain);
-		char *fileName;
-		fileName = calcSaveFileName(ConfMan.getInt("save_slot"));
+		if (getGameType() != GType_IHNM)
+			_interface->setMode(kPanelMain);
+		else
+			_interface->setMode(kPanelChapterSelection);
+
+		char *fileName = calcSaveFileName(ConfMan.getInt("save_slot"));
 		load(fileName);
 	} else {
 		_framesEsc = 0;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list