From e3e9bac6f6e0a9174e56afdd3e6a497baf979852 Mon Sep 17 00:00:00 2001 From: Lars Skovlund Date: Mon, 6 Sep 2010 10:11:07 +0000 Subject: SCI: Clear class bit when cloning objects. This fixes a regression affecting many SCI32 games and possibly other games, looping or recursing endlessly. svn-id: r52583 --- engines/sci/engine/kscripts.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engines/sci/engine/kscripts.cpp b/engines/sci/engine/kscripts.cpp index a975ce2988..e6c1273f13 100644 --- a/engines/sci/engine/kscripts.cpp +++ b/engines/sci/engine/kscripts.cpp @@ -178,7 +178,7 @@ reg_t kClone(EngineState *s, int argc, reg_t *argv) { *cloneObj = *parentObj; // Mark as clone - writeSelectorValue(s->_segMan, cloneAddr, SELECTOR(_info_), infoSelector | kInfoFlagClone); + writeSelectorValue(s->_segMan, cloneAddr, SELECTOR(_info_), (infoSelector & ~kInfoFlagClass) | kInfoFlagClone); cloneObj->setSpeciesSelector(cloneObj->getPos()); if (parentObj->isClass()) -- cgit v1.2.3