[Scummvm-cvs-logs] SF.net SVN: scummvm:[50865] scummvm/trunk/engines/sci/engine/kernel.cpp
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Wed Jul 14 04:28:17 CEST 2010
Revision: 50865
http://scummvm.svn.sourceforge.net/scummvm/?rev=50865&view=rev
Author: thebluegr
Date: 2010-07-14 02:28:17 +0000 (Wed, 14 Jul 2010)
Log Message:
-----------
SCI: Fixed script bug (invalid call to kStrCpy) in Island of Dr. Brain, room 260 (Hominy Homonym puzzle)
Modified Paths:
--------------
scummvm/trunk/engines/sci/engine/kernel.cpp
Modified: scummvm/trunk/engines/sci/engine/kernel.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel.cpp 2010-07-14 02:12:58 UTC (rev 50864)
+++ scummvm/trunk/engines/sci/engine/kernel.cpp 2010-07-14 02:28:17 UTC (rev 50865)
@@ -271,6 +271,12 @@
SCI_WORKAROUNDENTRY_TERMINATOR
};
+// gameID, scriptNr,lvl, object-name, method-name, call, index, replace
+static const SciWorkaroundEntry kStrCpy_workarounds[] = {
+ { GID_ISLANDBRAIN, 45, 0, "aWord", "addOn", -1, 0, { 0, 0 } }, // Hominy Homonym puzzle, room 260
+ SCI_WORKAROUNDENTRY_TERMINATOR
+};
+
struct SciKernelMapSubEntry {
SciVersion fromVersion;
SciVersion toVersion;
@@ -613,7 +619,7 @@
{ MAP_CALL(StrAt), SIG_EVERYWHERE, "ri(i)", NULL, NULL },
{ MAP_CALL(StrCat), SIG_EVERYWHERE, "rr", NULL, NULL },
{ MAP_CALL(StrCmp), SIG_EVERYWHERE, "rr(i)", NULL, NULL },
- { MAP_CALL(StrCpy), SIG_EVERYWHERE, "[r0]r(i)", NULL, NULL },
+ { MAP_CALL(StrCpy), SIG_EVERYWHERE, "[r0]r(i)", NULL, kStrCpy_workarounds },
{ MAP_CALL(StrEnd), SIG_EVERYWHERE, "r", NULL, NULL },
{ MAP_CALL(StrLen), SIG_EVERYWHERE, "[r0]", NULL, NULL },
{ MAP_CALL(StrSplit), SIG_EVERYWHERE, "rr[r0]", NULL, NULL },
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