fixed memory leaks caused by pool allocator, thanks Dev0

This commit is contained in:
ejcoumans
2007-09-10 19:18:50 +00:00
parent ab33083a9c
commit cfde010808
2 changed files with 7 additions and 4 deletions

View File

@@ -41,9 +41,6 @@ btCollisionDispatcher::btCollisionDispatcher (btCollisionConfiguration* collisio
setNearCallback(defaultNearCallback);
int maxElements = 16384;
m_collisionAlgorithmPoolAllocator = new btPoolAllocator(m_collisionConfiguration->getCollisionAlgorithmMaxElementSize(),m_collisionConfiguration->getCollisionAlgorithmPoolSize());
m_persistentManifoldPoolAllocator = new btPoolAllocator(sizeof(btPersistentManifold),m_collisionConfiguration->getPersistentManifoldPoolSize());
@@ -68,7 +65,8 @@ void btCollisionDispatcher::registerCollisionCreateFunc(int proxyType0, int prox
btCollisionDispatcher::~btCollisionDispatcher()
{
delete m_collisionAlgorithmPoolAllocator;
delete m_persistentManifoldPoolAllocator;
}
btPersistentManifold* btCollisionDispatcher::getNewManifold(void* b0,void* b1)

View File

@@ -45,6 +45,11 @@ public:
*(void**)p = 0;
}
~btPoolAllocator()
{
delete m_pool;
}
void* allocate(int size)
{
btAssert(!size || size<=m_elemSize);