Remove unnecessary lock of OdeLock in OdePrim.changeadd()

This taint can only ever be processed from the OdeScene.Simulate() loop, which already locks OdeLock.
0.7.2-post-fixes
Justin Clark-Casey (justincc) 2011-10-18 20:58:59 +01:00
parent 5980d57b7a
commit d6456b9ea8
1 changed files with 13 additions and 18 deletions

View File

@ -1494,30 +1494,25 @@ Console.WriteLine("CreateGeom:");
// m_log.Debug(m_localID);
}
lock (_parent_scene.OdeLock)
{
#if SPAM
Console.WriteLine("changeadd 1");
#endif
CreateGeom(m_targetSpace, mesh);
CreateGeom(m_targetSpace, mesh);
if (prim_geom != IntPtr.Zero)
{
d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z);
d.Quaternion myrot = new d.Quaternion();
myrot.X = _orientation.X;
myrot.Y = _orientation.Y;
myrot.Z = _orientation.Z;
myrot.W = _orientation.W;
d.GeomSetQuaternion(prim_geom, ref myrot);
}
if (IsPhysical && Body == IntPtr.Zero)
{
enableBody();
}
if (prim_geom != IntPtr.Zero)
{
d.GeomSetPosition(prim_geom, _position.X, _position.Y, _position.Z);
d.Quaternion myrot = new d.Quaternion();
myrot.X = _orientation.X;
myrot.Y = _orientation.Y;
myrot.Z = _orientation.Z;
myrot.W = _orientation.W;
d.GeomSetQuaternion(prim_geom, ref myrot);
}
if (IsPhysical && Body == IntPtr.Zero)
enableBody();
changeSelectedStatus();
m_taintadd = false;