diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-08-21 07:09:27 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-08-21 07:09:27 +0400 |
commit | 5cd51b4387f262fbc2b5de18e9f4b9d02f5d4ca6 (patch) | |
tree | 7bb2ea306f00b9030f31e5e38740b03479a10cc1 /source/gameengine | |
parent | 1be67b60fd08f640b56db23e08ad0469318f26b3 (diff) | |
parent | 442ba39d49d9453f84791989c9149692b70ddad5 (diff) |
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r22625:22668
needed this for 2.5 testing
Diffstat (limited to 'source/gameengine')
-rw-r--r-- | source/gameengine/Converter/BL_BlenderDataConversion.cpp | 3 | ||||
-rw-r--r-- | source/gameengine/Converter/KX_BlenderSceneConverter.cpp | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp b/source/gameengine/Converter/BL_BlenderDataConversion.cpp index 3d38759d951..6cb4e980a3d 100644 --- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp +++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp @@ -2404,8 +2404,11 @@ void BL_ConvertBlenderObjects(struct Main* maggie, obj->Release(); } childrenlist->Release(); + // now destroy recursively + converter->UnregisterGameObject(childobj); // removing objects during conversion make sure this runs too kxscene->RemoveObject(childobj); + continue; } diff --git a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp index 3220672c392..151564391f3 100644 --- a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp +++ b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp @@ -462,10 +462,11 @@ void KX_BlenderSceneConverter::RegisterGameObject( 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); @@ -477,7 +478,6 @@ void KX_BlenderSceneConverter::UnregisterGameObject( m_map_blender_to_gameobject.remove(bptr); } } -#endif } KX_GameObject *KX_BlenderSceneConverter::FindGameObject( |