diff --git a/OpenSim/Region/PhysicsModules/Ode/ODEPrim.cs b/OpenSim/Region/PhysicsModules/Ode/ODEPrim.cs index a31110b85b..ac082cb0bd 100644 --- a/OpenSim/Region/PhysicsModules/Ode/ODEPrim.cs +++ b/OpenSim/Region/PhysicsModules/Ode/ODEPrim.cs @@ -2676,18 +2676,17 @@ Console.WriteLine(" JointCreateFixed"); m_lastVelocity = _velocity; - - - if(m_vehicle != null && m_vehicle.Type != Vehicle.TYPE_NONE) - m_vehicle.Stop(); - if (Body != IntPtr.Zero) { d.BodySetLinearVel(Body, 0, 0, 0); // stop it d.BodySetPosition(Body, _position.X, _position.Y, _position.Z); - enableBodySoft(); } + if(m_vehicle != null && m_vehicle.Type != Vehicle.TYPE_NONE) + m_vehicle.Stop(); // this also updates vehicle last position from the body position + + enableBodySoft(); + outofBounds = false; base.RequestPhysicsterseUpdate();