diff --git a/Extras/AllBulletDemosOSX/src/BTDemo.mm b/Extras/AllBulletDemosOSX/src/BTDemo.mm index c961d18c4..ebdab213b 100644 --- a/Extras/AllBulletDemosOSX/src/BTDemo.mm +++ b/Extras/AllBulletDemosOSX/src/BTDemo.mm @@ -314,7 +314,9 @@ static BOOL DrawContacts = NO; } - (void) specialKeyReleased: (unsigned) key -{} +{ + [_demo demo]->specialKeyboardUp(key,(int)MousePosition.x, (int)MousePosition.y ); +} - (void) mouseButtonPressed: (unsigned) mouseButton { diff --git a/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp b/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp index 83cd9a275..9019f7b15 100644 --- a/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp +++ b/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp @@ -240,7 +240,7 @@ m_solverIslandCallback ( NULL ) { void* mem = btAlignedAlloc(sizeof(InplaceSolverIslandCallback),16); - m_solverIslandCallback = new (mem) InplaceSolverIslandCallback (constraintSolver, m_stackAlloc, dispatcher); + m_solverIslandCallback = new (mem) InplaceSolverIslandCallback (m_constraintSolver, m_stackAlloc, dispatcher); } } @@ -1194,6 +1194,7 @@ void btDiscreteDynamicsWorld::setConstraintSolver(btConstraintSolver* solver) } m_ownsConstraintSolver = false; m_constraintSolver = solver; + m_solverIslandCallback->m_solver = solver; } btConstraintSolver* btDiscreteDynamicsWorld::getConstraintSolver()