Reverted the code which handles objects without a base object when loading, for now. This possibly indicates an issue related to the garbage collector

svn-id: r50142
This commit is contained in:
Filippos Karapetis 2010-06-22 15:03:19 +00:00
parent 5855cd7127
commit c28fa2cf19
3 changed files with 5 additions and 9 deletions

View file

@ -778,11 +778,11 @@ void SegManager::reconstructScripts(EngineState *s) {
Object *obj = scr->scriptObjInit(addr, false);
if (getSciVersion() < SCI_VERSION_1_1) {
if (!obj->isFreed()) {
if (!obj->initBaseObject(this, addr, false)) {
warning("Failed to locate base object for object at %04X:%04X; skipping", PRINT_REG(addr));
//scr->scriptObjRemove(addr);
}
if (!obj->initBaseObject(this, addr, false)) {
// TODO/FIXME: This should not be happening at all. It might indicate a possible issue
// with the garbage collector. It happens for example in LSL5 (German, perhaps English too).
warning("Failed to locate base object for object at %04X:%04X; skipping", PRINT_REG(addr));
scr->scriptObjRemove(addr);
}
}
}