From f392d8ceb1056bf91c07a8c2a077216bee9678b7 Mon Sep 17 00:00:00 2001 From: Xuchen Han Date: Thu, 29 Aug 2019 10:32:55 -0700 Subject: [PATCH] clean up memory when exiting --- examples/SharedMemory/PhysicsServerCommandProcessor.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/examples/SharedMemory/PhysicsServerCommandProcessor.cpp b/examples/SharedMemory/PhysicsServerCommandProcessor.cpp index e3d1d57c5..ccfd4eab9 100644 --- a/examples/SharedMemory/PhysicsServerCommandProcessor.cpp +++ b/examples/SharedMemory/PhysicsServerCommandProcessor.cpp @@ -2870,6 +2870,11 @@ void PhysicsServerCommandProcessor::deleteDynamicsWorld() delete m_data->m_remoteDebugDrawer; m_data->m_remoteDebugDrawer = 0; +#ifndef SKIP_DEFORMABLE_BODY + delete m_data->m_deformablebodySolver; + m_data->m_deformablebodySolver = 0; +#endif + delete m_data->m_solver; m_data->m_solver = 0; @@ -10392,14 +10397,10 @@ bool PhysicsServerCommandProcessor::processRemoveBodyCommand(const struct Shared btSoftBody* psb = bodyHandle->m_softBody; if (m_data->m_pluginManager.getRenderInterface()) { -#ifdef SKIP_DEFORMABLE_BODY m_data->m_pluginManager.getRenderInterface()->removeVisualShape(psb->getBroadphaseHandle()->getUid()); -#endif } serverCmd.m_removeObjectArgs.m_bodyUniqueIds[serverCmd.m_removeObjectArgs.m_numBodies++] = bodyUniqueId; -#ifdef SKIP_DEFORMABLE_BODY m_data->m_dynamicsWorld->removeSoftBody(psb); -#endif int graphicsInstance = psb->getUserIndex2(); m_data->m_guiHelper->removeGraphicsInstance(graphicsInstance); delete psb;