From 603afefaab7833d3fc70de79874130df3b6a432e Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Fri, 8 May 2015 14:16:38 -0700 Subject: [PATCH 1/2] silence verbose no-very-helpful log message --- libraries/physics/src/PhysicalEntitySimulation.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/physics/src/PhysicalEntitySimulation.cpp b/libraries/physics/src/PhysicalEntitySimulation.cpp index ed7b986800..50e81b4788 100644 --- a/libraries/physics/src/PhysicalEntitySimulation.cpp +++ b/libraries/physics/src/PhysicalEntitySimulation.cpp @@ -167,7 +167,8 @@ VectorOfMotionStates& PhysicalEntitySimulation::getObjectsToAdd() { _tempVector.push_back(motionState); entityItr = _pendingAdds.erase(entityItr); } else { - qDebug() << "Warning! Failed to generate new shape for entity." << entity->getName(); + // TODO: Seth to look into why this case is hit. + //qDebug() << "Warning! Failed to generate new shape for entity." << entity->getName(); ++entityItr; } } else { From a2ffc1029b9d32ddc38ed875a9fdd9106277f892 Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Fri, 8 May 2015 14:18:44 -0700 Subject: [PATCH 2/2] clear MotionState pointer in body on delete --- libraries/physics/src/PhysicsEngine.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libraries/physics/src/PhysicsEngine.cpp b/libraries/physics/src/PhysicsEngine.cpp index ea74a87286..bfd0b6cb28 100644 --- a/libraries/physics/src/PhysicsEngine.cpp +++ b/libraries/physics/src/PhysicsEngine.cpp @@ -147,6 +147,7 @@ void PhysicsEngine::deleteObjects(VectorOfMotionStates& objects) { // NOTE: setRigidBody() modifies body->m_userPointer so we should clear the MotionState's body BEFORE deleting it. btRigidBody* body = object->getRigidBody(); object->setRigidBody(nullptr); + body->setMotionState(nullptr); delete body; object->releaseShape(); delete object; @@ -161,6 +162,7 @@ void PhysicsEngine::deleteObjects(SetOfMotionStates& objects) { // NOTE: setRigidBody() modifies body->m_userPointer so we should clear the MotionState's body BEFORE deleting it. object->setRigidBody(nullptr); + body->setMotionState(nullptr); delete body; object->releaseShape(); delete object;