[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [22603] branches/blender2.5/blender/source /gameengine: BGE guardedalloc, Uses WITH_CXX_GUARDEDALLOC but gives a string to MEM_mallocN for better tracking memory usage .

Campbell Barton ideasman42 at gmail.com
Tue Aug 18 17:37:31 CEST 2009


Revision: 22603
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=22603
Author:   campbellbarton
Date:     2009-08-18 17:37:31 +0200 (Tue, 18 Aug 2009)

Log Message:
-----------
BGE guardedalloc, Uses WITH_CXX_GUARDEDALLOC but gives a string to MEM_mallocN for better tracking memory usage.

* off by default.
* new/delete are at the bottom of each class
* python BGE objects have the new/delete in the Py_Header macro.

Modified Paths:
--------------
    branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
    branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderInputDevice.h
    branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h
    branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderMouseDevice.h
    branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.h
    branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderSystem.h
    branches/blender2.5/blender/source/gameengine/Converter/BL_ArmatureObject.h
    branches/blender2.5/blender/source/gameengine/Converter/BL_DeformableGameObject.h
    branches/blender2.5/blender/source/gameengine/Converter/BL_MeshDeformer.h
    branches/blender2.5/blender/source/gameengine/Converter/BL_ModifierDeformer.h
    branches/blender2.5/blender/source/gameengine/Converter/BL_ShapeDeformer.h
    branches/blender2.5/blender/source/gameengine/Converter/BL_SkinDeformer.h
    branches/blender2.5/blender/source/gameengine/Converter/BL_SkinMeshObject.h
    branches/blender2.5/blender/source/gameengine/Converter/BlenderWorldInfo.h
    branches/blender2.5/blender/source/gameengine/Converter/KX_BlenderScalarInterpolator.h
    branches/blender2.5/blender/source/gameengine/Converter/KX_BlenderSceneConverter.h
    branches/blender2.5/blender/source/gameengine/Expressions/BoolValue.h
    branches/blender2.5/blender/source/gameengine/Expressions/ConstExpr.h
    branches/blender2.5/blender/source/gameengine/Expressions/EmptyValue.h
    branches/blender2.5/blender/source/gameengine/Expressions/ErrorValue.h
    branches/blender2.5/blender/source/gameengine/Expressions/Expression.h
    branches/blender2.5/blender/source/gameengine/Expressions/FloatValue.h
    branches/blender2.5/blender/source/gameengine/Expressions/IdentifierExpr.h
    branches/blender2.5/blender/source/gameengine/Expressions/IfExpr.h
    branches/blender2.5/blender/source/gameengine/Expressions/InputParser.h
    branches/blender2.5/blender/source/gameengine/Expressions/IntValue.h
    branches/blender2.5/blender/source/gameengine/Expressions/KX_HashedPtr.h
    branches/blender2.5/blender/source/gameengine/Expressions/Operator1Expr.h
    branches/blender2.5/blender/source/gameengine/Expressions/Operator2Expr.h
    branches/blender2.5/blender/source/gameengine/Expressions/PyObjectPlus.h
    branches/blender2.5/blender/source/gameengine/Expressions/StringValue.h
    branches/blender2.5/blender/source/gameengine/Expressions/Value.h
    branches/blender2.5/blender/source/gameengine/Expressions/VectorValue.h
    branches/blender2.5/blender/source/gameengine/Expressions/VoidValue.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_ActuatorEventManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_AlwaysEventManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_EventManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_ExpressionController.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_IActuator.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_IInputDevice.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_IScene.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_JoystickManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_KeyboardManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_LogicManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_MouseManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_PropertyEventManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_RandomEventManager.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_RandomNumberGenerator.h
    branches/blender2.5/blender/source/gameengine/GameLogic/SCA_TimeEventManager.h
    branches/blender2.5/blender/source/gameengine/Ketsji/BL_BlenderShader.h
    branches/blender2.5/blender/source/gameengine/Ketsji/BL_Material.h
    branches/blender2.5/blender/source/gameengine/Ketsji/BL_Shader.h
    branches/blender2.5/blender/source/gameengine/Ketsji/BL_Texture.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_BlenderMaterial.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_BulletPhysicsController.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_CameraIpoSGController.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_ClientObjectInfo.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_Dome.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_EmptyObject.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_IInterpolator.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_IPO_SGController.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_IPhysicsController.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_IScalarInterpolator.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_ISceneConverter.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_ISystem.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_KetsjiEngine.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_LightIpoSGController.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_MaterialIpoController.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_MotionState.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_ObColorIpoSGController.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_OrientationInterpolator.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_PolygonMaterial.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_PositionInterpolator.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_RayCast.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_RayEventManager.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_SG_BoneParentNodeRelationship.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_SG_NodeRelationships.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_ScalarInterpolator.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_ScalingInterpolator.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_TimeCategoryLogger.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_TimeLogger.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_TouchEventManager.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_WorldInfo.h
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_WorldIpoController.h
    branches/blender2.5/blender/source/gameengine/Network/NG_NetworkDeviceInterface.h
    branches/blender2.5/blender/source/gameengine/Network/NG_NetworkMessage.h
    branches/blender2.5/blender/source/gameengine/Network/NG_NetworkObject.h
    branches/blender2.5/blender/source/gameengine/Network/NG_NetworkScene.h
    branches/blender2.5/blender/source/gameengine/Physics/Bullet/CcdGraphicController.h
    branches/blender2.5/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.h
    branches/blender2.5/blender/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.h
    branches/blender2.5/blender/source/gameengine/Physics/Dummy/DummyPhysicsEnvironment.h
    branches/blender2.5/blender/source/gameengine/Physics/common/PHY_IController.h
    branches/blender2.5/blender/source/gameengine/Physics/common/PHY_IGraphicController.h
    branches/blender2.5/blender/source/gameengine/Physics/common/PHY_IMotionState.h
    branches/blender2.5/blender/source/gameengine/Physics/common/PHY_IPhysicsController.h
    branches/blender2.5/blender/source/gameengine/Physics/common/PHY_IPhysicsEnvironment.h
    branches/blender2.5/blender/source/gameengine/Physics/common/PHY_IVehicle.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_2DFilterManager.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_BucketManager.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_Deformer.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_FramingManager.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_ICanvas.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_IRasterizer.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_IRenderTools.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_MaterialBucket.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_MeshObject.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_ListRasterizer.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_VAOpenGLRasterizer.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_Polygon.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_Rect.h
    branches/blender2.5/blender/source/gameengine/Rasterizer/RAS_TexVert.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_BBox.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_Controller.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_DList.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_IObject.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_Node.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_ParentRelation.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_QList.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_Spatial.h
    branches/blender2.5/blender/source/gameengine/SceneGraph/SG_Tree.h

Modified: branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -40,6 +40,10 @@
 
 #include "KX_BlenderGL.h"
 
+#ifdef WITH_CXX_GUARDEDALLOC
+#include "MEM_guardedalloc.h"
+#endif
+
 struct ARegion;
 struct wmWindow;
 
@@ -166,6 +170,13 @@
 	struct ARegion* m_ar;
 	struct wmWindow* m_win;
 	RAS_Rect 	m_area_rect;
+
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:KX_BlenderCanvas"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif // __KX_BLENDERCANVAS

Modified: branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderInputDevice.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderInputDevice.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderInputDevice.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -39,8 +39,10 @@
 #include "WM_types.h"
 #include "SCA_IInputDevice.h"
 
+#ifdef WITH_CXX_GUARDEDALLOC
+#include "MEM_guardedalloc.h"
+#endif
 
-
 /**
  Base Class for Blender specific inputdevices. Blender specific inputdevices are used when the gameengine is running in embedded mode instead of standalone mode.
 */
@@ -222,6 +224,12 @@
 //	virtual const SCA_InputEvent&	GetEventValue(SCA_IInputDevice::KX_EnumInputs inputcode)=0;
 	virtual bool	ConvertBlenderEvent(unsigned short incode,short val)=0;
 
+	
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_BlenderInputDevice"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };                                                                                                                 
 #endif //__KX_BLENDERINPUTDEVICE
 

Modified: branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -31,6 +31,10 @@
 
 #include "KX_BlenderInputDevice.h"
 
+#ifdef WITH_CXX_GUARDEDALLOC
+#include "MEM_guardedalloc.h"
+#endif
+
 class KX_BlenderKeyboardDevice : public BL_BlenderInputDevice
 {
 	bool	m_hookesc;
@@ -43,6 +47,13 @@
 	virtual bool	ConvertBlenderEvent(unsigned short incode,short val);
 	virtual void	NextFrame();
 	virtual void	HookEscape();
+
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:KX_BlenderKeyboardDevice"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif //__KX_BLENDERKEYBOARDDEVICE

Modified: branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderMouseDevice.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderMouseDevice.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderMouseDevice.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -31,6 +31,10 @@
 
 #include "KX_BlenderInputDevice.h"
 
+#ifdef WITH_CXX_GUARDEDALLOC
+#include "MEM_guardedalloc.h"
+#endif
+
 class KX_BlenderMouseDevice : public BL_BlenderInputDevice
 {
 public:
@@ -41,6 +45,13 @@
 //	virtual const SCA_InputEvent&	GetEventValue(SCA_IInputDevice::KX_EnumInputs inputcode);
 	virtual bool	ConvertBlenderEvent(unsigned short incode,short val);
 	virtual void	NextFrame();
+
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:KX_BlenderMouseDevice"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif //__KX_BLENDERMOUSEDEVICE

Modified: branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -37,6 +37,10 @@
 
 #include "RAS_IRenderTools.h"
 
+#ifdef WITH_CXX_GUARDEDALLOC
+#include "MEM_guardedalloc.h"
+#endif
+
 struct KX_ClientObjectInfo;
 class KX_RayCast;
 
@@ -95,6 +99,13 @@
 	virtual	void Render2DFilters(RAS_ICanvas* canvas);
 
 	virtual void SetClientObject(RAS_IRasterizer *rasty, void* obj);
+	
+	
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:KX_BlenderRenderTools"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif //__KX_BLENDERRENDERTOOLS

Modified: branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderSystem.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderSystem.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/BlenderRoutines/KX_BlenderSystem.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -34,6 +34,10 @@
  */
 #include "KX_ISystem.h"
 
+#ifdef WITH_CXX_GUARDEDALLOC
+#include "MEM_guardedalloc.h"
+#endif
+
 class KX_BlenderSystem : public KX_ISystem
 {
 	double	m_starttime;
@@ -42,6 +46,14 @@
 	KX_BlenderSystem();
 	virtual ~KX_BlenderSystem() {};
 	virtual double GetTimeInSeconds();
+
+
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:KX_BlenderSystem"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif //__KX_BLENDERSYSTEM

Modified: branches/blender2.5/blender/source/gameengine/Converter/BL_ArmatureObject.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/Converter/BL_ArmatureObject.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/Converter/BL_ArmatureObject.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -93,6 +93,13 @@
 	short	m_activePriority;
 
 	double			m_lastapplyframe;
+
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_ArmatureObject"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif

Modified: branches/blender2.5/blender/source/gameengine/Converter/BL_DeformableGameObject.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/Converter/BL_DeformableGameObject.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/Converter/BL_DeformableGameObject.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -45,7 +45,6 @@
 class BL_DeformableGameObject : public KX_GameObject  
 {
 public:
-
 	CValue*		GetReplica();
 
 	double GetLastFrame ()
@@ -100,6 +99,12 @@
 	Object*		m_blendobj;
 	short		m_activePriority;
 
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_DeformableGameObject"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif

Modified: branches/blender2.5/blender/source/gameengine/Converter/BL_MeshDeformer.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/Converter/BL_MeshDeformer.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/Converter/BL_MeshDeformer.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -85,6 +85,13 @@
 	int							m_tvtot;
 	BL_DeformableGameObject*	m_gameobj;
 	double					 	m_lastDeformUpdate;
+
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_MeshDeformer"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif

Modified: branches/blender2.5/blender/source/gameengine/Converter/BL_ModifierDeformer.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/Converter/BL_ModifierDeformer.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/Converter/BL_ModifierDeformer.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -101,6 +101,12 @@
 	Scene					*m_scene;
 	DerivedMesh				*m_dm;
 
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_ModifierDeformer"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif

Modified: branches/blender2.5/blender/source/gameengine/Converter/BL_ShapeDeformer.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/Converter/BL_ShapeDeformer.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/Converter/BL_ShapeDeformer.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -83,6 +83,12 @@
 	vector<IpoCurve*>		 m_shapeDrivers;
 	double					 m_lastShapeUpdate;
 
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_ShapeDeformer"); }
+	void operator delete( void *mem ) { MEM_freeN(mem); }
+#endif
 };
 
 #endif

Modified: branches/blender2.5/blender/source/gameengine/Converter/BL_SkinDeformer.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/Converter/BL_SkinDeformer.h	2009-08-18 15:27:48 UTC (rev 22602)
+++ branches/blender2.5/blender/source/gameengine/Converter/BL_SkinDeformer.h	2009-08-18 15:37:31 UTC (rev 22603)
@@ -105,6 +105,12 @@
 	bool					m_poseApplied;
 	bool					m_recalcNormal;
 
+
+#ifdef WITH_CXX_GUARDEDALLOC
+public:
+	void *operator new( unsigned int num_bytes) { return MEM_mallocN(num_bytes, "GE:BL_SkinDeformer"); }

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list