[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [22668] trunk/blender/source/gameengine/ Converter: fix for own bug added since 2.49a,
Campbell Barton
ideasman42 at gmail.com
Fri Aug 21 05:06:37 CEST 2009
Revision: 22668
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=22668
Author: campbellbarton
Date: 2009-08-21 05:06:36 +0200 (Fri, 21 Aug 2009)
Log Message:
-----------
fix for own bug added since 2.49a,
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.
Modified Paths:
--------------
trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
Modified: trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
===================================================================
--- trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp 2009-08-21 02:51:56 UTC (rev 22667)
+++ trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp 2009-08-21 03:06:36 UTC (rev 22668)
@@ -2422,8 +2422,11 @@
obj->Release();
}
childrenlist->Release();
+
// now destroy recursively
+ converter->UnregisterGameObject(childobj); // removing objects during conversion make sure this runs too
kxscene->RemoveObject(childobj);
+
continue;
}
Modified: trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
===================================================================
--- trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp 2009-08-21 02:51:56 UTC (rev 22667)
+++ trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp 2009-08-21 03:06:36 UTC (rev 22668)
@@ -492,10 +492,11 @@
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);
@@ -507,7 +508,6 @@
m_map_blender_to_gameobject.remove(bptr);
}
}
-#endif
}
KX_GameObject *KX_BlenderSceneConverter::FindGameObject(
More information about the Bf-blender-cvs
mailing list