[Scummvm-cvs-logs] SF.net SVN: scummvm:[51663] scummvm/trunk/engines/sci/engine
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Mon Aug 2 23:44:41 CEST 2010
Revision: 51663
http://scummvm.svn.sourceforge.net/scummvm/?rev=51663&view=rev
Author: m_kiewitz
Date: 2010-08-02 21:44:41 +0000 (Mon, 02 Aug 2010)
Log Message:
-----------
SCI: allowing kCheckSaveGame with id 0
qfg2 - when trying to restore from an empty saved game list
Modified Paths:
--------------
scummvm/trunk/engines/sci/engine/kfile.cpp
scummvm/trunk/engines/sci/engine/workarounds.cpp
Modified: scummvm/trunk/engines/sci/engine/kfile.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kfile.cpp 2010-08-02 21:37:43 UTC (rev 51662)
+++ scummvm/trunk/engines/sci/engine/kfile.cpp 2010-08-02 21:44:41 UTC (rev 51663)
@@ -488,6 +488,10 @@
Common::Array<SavegameDesc> saves;
listSavegames(saves);
+ // we allow 0 (happens in QfG2 when trying to restore from an empty saved game list) and return false in that case
+ if (virtualId == 0)
+ return NULL_REG;
+
// Find saved-game
if ((virtualId < SAVEGAMEID_OFFICIALRANGE_START) || (virtualId > SAVEGAMEID_OFFICIALRANGE_END))
error("kCheckSaveGame: called with invalid savegameId!");
@@ -502,7 +506,7 @@
return NULL_REG;
// Otherwise we assume the savegame is OK
- return make_reg(0, 1);
+ return TRUE_REG;
}
reg_t kGetSaveFiles(EngineState *s, int argc, reg_t *argv) {
Modified: scummvm/trunk/engines/sci/engine/workarounds.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/workarounds.cpp 2010-08-02 21:37:43 UTC (rev 51662)
+++ scummvm/trunk/engines/sci/engine/workarounds.cpp 2010-08-02 21:44:41 UTC (rev 51663)
@@ -111,7 +111,7 @@
{ GID_QFG1, -1, 210, 0, "Encounter", "init", 0xbe4, 0, { WORKAROUND_FAKE, 0 } }, // qfg1: going to the brigands hideout
{ GID_QFG2, -1, 71, 0, "theInvSheet", "doit", -1, 1, { WORKAROUND_FAKE, 0 } }, // accessing the inventory
{ GID_QFG2, -1, 701, -1, "Alley", "at", -1, 0, { WORKAROUND_FAKE, 0 } }, // when walking inside the alleys in the town - bug #3035835 & #3038367
- { GID_QFG2, -1, 990, 0, "Restore", "doit", -1, 0, { WORKAROUND_FAKE, 0 } }, // when press enter in restore dialog w/o any saved games present
+ { GID_QFG2, -1, 990, 0, "Restore", "doit", -1, 364, { WORKAROUND_FAKE, 0 } }, // when press enter in restore dialog w/o any saved games present
{ GID_QFG3, 330, 330, 0, "rajahTeller", "doChild", -1, -1, { WORKAROUND_FAKE, 0 } }, // when talking to King Rajah about "Rajah" (bug #3036390, temp 1) or "Tarna" (temp 0)
{ GID_SQ1, 103, 103, 0, "hand", "internalEvent", -1, -1, { WORKAROUND_FAKE, 0 } }, // Spanish (and maybe early versions?) only: when moving cursor over input pad, temps 1 and 2
{ GID_SQ1, -1, 703, 0, "", "export 1", -1, 0, { WORKAROUND_FAKE, 0 } }, // sub that's called from several objects while on sarien battle cruiser
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