SCI: Fixed part of bug #3150767 - "KQ5 French crash on startup, only partial English text"

This is a regression from r54510

svn-id: r55122
This commit is contained in:
Filippos Karapetis 2011-01-04 23:11:19 +00:00
parent 11780744c2
commit f2234f8ee3

View File

@ -588,8 +588,20 @@ void Script::initialiseObjectsSci0(SegManager *segMan, SegmentId segmentId) {
if (pass == 2) {
if (!obj->initBaseObject(segMan, addr)) {
error("Failed to locate base object for object at %04X:%04X", PRINT_REG(addr));
//scriptObjRemove(addr);
if ((_nr == 202 || _nr == 764) && g_sci->getGameId() == GID_KQ5) {
// WORKAROUND: Script 202 of KQ5 French and German
// (perhaps Spanish too?) has an invalid object.
// This is non-fatal. Refer to bugs #3035396 and
// #3150767.
// Same happens with script 764, it seems to
// contain junk towards its end.
if (getSciVersion() < SCI_VERSION_1_1)
addr.offset += 8;
_objects.erase(addr.toUint16());
} else {
error("Failed to locate base object for object at %04X:%04X", PRINT_REG(addr));
}
}
}
}