From 37e2c79cf22b1a32c53e2bad390460b9e3d9dea3 Mon Sep 17 00:00:00 2001 From: Daniel Chappuis Date: Mon, 9 Oct 2017 22:41:45 +0200 Subject: [PATCH] Fix issue in ContactManifoldSet --- src/collision/ContactManifoldSet.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/collision/ContactManifoldSet.cpp b/src/collision/ContactManifoldSet.cpp index 2fcea3f3..4e73aa9f 100644 --- a/src/collision/ContactManifoldSet.cpp +++ b/src/collision/ContactManifoldSet.cpp @@ -239,6 +239,9 @@ void ContactManifoldSet::createManifold(const ContactManifoldInfo* manifoldInfo) ContactManifold(manifoldInfo, mShape1, mShape2, mMemoryAllocator); manifold->setPrevious(nullptr); manifold->setNext(mManifolds); + if (mManifolds != nullptr) { + mManifolds->setPrevious(manifold); + } mManifolds = manifold; mNbManifolds++; @@ -248,6 +251,7 @@ void ContactManifoldSet::createManifold(const ContactManifoldInfo* manifoldInfo) void ContactManifoldSet::removeManifold(ContactManifold* manifold) { assert(mNbManifolds > 0); + assert(manifold != nullptr); ContactManifold* previous = manifold->getPrevious(); ContactManifold* next = manifold->getNext();