aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/PhysicsModules/ubOde/ODEPrim.cs
diff options
context:
space:
mode:
authorUbitUmarov2015-11-20 00:37:41 +0000
committerUbitUmarov2015-11-20 00:37:41 +0000
commit98a00cbce55d7b880b860f7e95a66e13c5f070b7 (patch)
tree4a1c002a0b3907231d1d2d852183e54996745da5 /OpenSim/Region/PhysicsModules/ubOde/ODEPrim.cs
parentremove unused return value on DeliverMessageTo() (diff)
downloadopensim-SC-98a00cbce55d7b880b860f7e95a66e13c5f070b7.zip
opensim-SC-98a00cbce55d7b880b860f7e95a66e13c5f070b7.tar.gz
opensim-SC-98a00cbce55d7b880b860f7e95a66e13c5f070b7.tar.bz2
opensim-SC-98a00cbce55d7b880b860f7e95a66e13c5f070b7.tar.xz
ubOde: add threading related calls new ode.dll may need. Hope this doesn't break with current linux ode library
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/PhysicsModules/ubOde/ODEPrim.cs6
1 files changed, 5 insertions, 1 deletions
diff --git a/OpenSim/Region/PhysicsModules/ubOde/ODEPrim.cs b/OpenSim/Region/PhysicsModules/ubOde/ODEPrim.cs
index 1dbf164..24fceb9 100644
--- a/OpenSim/Region/PhysicsModules/ubOde/ODEPrim.cs
+++ b/OpenSim/Region/PhysicsModules/ubOde/ODEPrim.cs
@@ -466,6 +466,8 @@ namespace OpenSim.Region.PhysicsModule.ubOde
466 { 466 {
467 lock (_parent_scene.OdeLock) 467 lock (_parent_scene.OdeLock)
468 { 468 {
469 d.AllocateODEDataForThread(0);
470
469 d.Vector3 dtmp; 471 d.Vector3 dtmp;
470 if (!childPrim && Body != IntPtr.Zero) 472 if (!childPrim && Body != IntPtr.Zero)
471 { 473 {
@@ -892,9 +894,11 @@ namespace OpenSim.Region.PhysicsModule.ubOde
892 _velocity.Y = 0; 894 _velocity.Y = 0;
893 _velocity.Z = 0; 895 _velocity.Z = 0;
894 896
897 d.AllocateODEDataForThread(0);
898
895 m_lastVelocity = _velocity; 899 m_lastVelocity = _velocity;
896 if (m_vehicle != null && m_vehicle.Type != Vehicle.TYPE_NONE) 900 if (m_vehicle != null && m_vehicle.Type != Vehicle.TYPE_NONE)
897 m_vehicle.Stop(); 901 m_vehicle.Stop();
898 902
899 if(Body != IntPtr.Zero) 903 if(Body != IntPtr.Zero)
900 d.BodySetLinearVel(Body, 0, 0, 0); // stop it 904 d.BodySetLinearVel(Body, 0, 0, 0); // stop it