Blender Git Loki
Git Commits -> Revision 5441323
Revision 5441323 by Benoit Bolsee (master) May 23, 2009, 14:46 (GMT) |
BGE: fix memleaks. SCA_RandomActuator: The random generator was shared between replicas and not deleted. Added ref counting between replicas to allow deletion at the end. KX_Camera: The scenegraph node was not deleted for temporary cameras (ImageMirror and shadow), causing 500 bytes leak per frame and per shadow light. KX_GameActuator: Global dictionary buffer was not deleted after saving. KX_MotionState: The motion state for compound child was not deleted KX_ReplaceMeshActuator: The mesh was unnecessarily converted for each actuator and not deleted, causing large memleak. After these fix, YoFrankie runs without memleak. |
Commit Details:
Full Hash: 5441323dca30c169d1ecb726d26e8cb4c5f4994d
SVN Revision: 20362
Parent Commit: 6d8d7cd
Lines Changed: +85, -43
20 Modified Paths:
/source/gameengine/Converter/BL_BlenderDataConversion.cpp (+5, -7) (Diff)
/source/gameengine/Converter/KX_BlenderSceneConverter.cpp (+3, -3) (Diff)
/source/gameengine/Converter/KX_BlenderSceneConverter.h (+1, -1) (Diff)
/source/gameengine/GameLogic/SCA_RandomNumberGenerator.cpp (+1, -0) (Diff)
/source/gameengine/GameLogic/SCA_RandomNumberGenerator.h (+13, -0) (Diff)
/source/gameengine/GameLogic/SCA_RandomSensor.cpp (+7, -3) (Diff)
/source/gameengine/GameLogic/SCA_RandomSensor.h (+1, -0) (Diff)
/source/gameengine/Ketsji/KX_BlenderMaterial.cpp (+4, -4) (Diff)
/source/gameengine/Ketsji/KX_BlenderMaterial.h (+2, -2) (Diff)
/source/gameengine/Ketsji/KX_Camera.cpp (+16, -1) (Diff)
/source/gameengine/Ketsji/KX_Camera.h (+7, -1) (Diff)
/source/gameengine/Ketsji/KX_ConvertPhysicsObjects.cpp (+2, -0) (Diff)
/source/gameengine/Ketsji/KX_GameActuator.cpp (+2, -0) (Diff)
/source/gameengine/Ketsji/KX_KetsjiEngine.cpp (+1, -1) (Diff)
/source/gameengine/Ketsji/KX_PolygonMaterial.cpp (+1, -1) (Diff)
/source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp (+7, -7) (Diff)
/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h (+3, -3) (Diff)
/source/gameengine/Rasterizer/RAS_MeshObject.cpp (+5, -5) (Diff)
/source/gameengine/Rasterizer/RAS_MeshObject.h (+2, -2) (Diff)
/source/gameengine/VideoTexture/ImageRender.cpp (+2, -2) (Diff)
/source/gameengine/Converter/KX_BlenderSceneConverter.cpp (+3, -3) (Diff)
/source/gameengine/Converter/KX_BlenderSceneConverter.h (+1, -1) (Diff)
/source/gameengine/GameLogic/SCA_RandomNumberGenerator.cpp (+1, -0) (Diff)
/source/gameengine/GameLogic/SCA_RandomNumberGenerator.h (+13, -0) (Diff)
/source/gameengine/GameLogic/SCA_RandomSensor.cpp (+7, -3) (Diff)
/source/gameengine/GameLogic/SCA_RandomSensor.h (+1, -0) (Diff)
/source/gameengine/Ketsji/KX_BlenderMaterial.cpp (+4, -4) (Diff)
/source/gameengine/Ketsji/KX_BlenderMaterial.h (+2, -2) (Diff)
/source/gameengine/Ketsji/KX_Camera.cpp (+16, -1) (Diff)
/source/gameengine/Ketsji/KX_Camera.h (+7, -1) (Diff)
/source/gameengine/Ketsji/KX_ConvertPhysicsObjects.cpp (+2, -0) (Diff)
/source/gameengine/Ketsji/KX_GameActuator.cpp (+2, -0) (Diff)
/source/gameengine/Ketsji/KX_KetsjiEngine.cpp (+1, -1) (Diff)
/source/gameengine/Ketsji/KX_PolygonMaterial.cpp (+1, -1) (Diff)
/source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp (+7, -7) (Diff)
/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h (+3, -3) (Diff)
/source/gameengine/Rasterizer/RAS_MeshObject.cpp (+5, -5) (Diff)
/source/gameengine/Rasterizer/RAS_MeshObject.h (+2, -2) (Diff)
/source/gameengine/VideoTexture/ImageRender.cpp (+2, -2) (Diff)