2.49a tries to remove the object from the conversion list every time. Now remove from the conversion list directly without being apart of the remove object function.
obj->Release();
}
childrenlist->Release();
+
// now destroy recursively
+ converter->UnregisterGameObject(childobj); // removing objects during conversion make sure this runs too
kxscene->RemoveObject(childobj);
+
continue;
}
m_map_blender_to_gameobject.insert(CHashedPtr(for_blenderobject),gameobject);
}
+/* only need to run this during conversion since
+ * m_map_blender_to_gameobject is freed after conversion */
void KX_BlenderSceneConverter::UnregisterGameObject(
KX_GameObject *gameobject)
{
-#if 0
struct Object *bobp= gameobject->GetBlenderObject();
if (bobp) {
CHashedPtr bptr(bobp);
m_map_blender_to_gameobject.remove(bptr);
}
}
-#endif
}
KX_GameObject *KX_BlenderSceneConverter::FindGameObject(