aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs4
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs2
3 files changed, 8 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs b/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
index f8208ec..7ac1e7e 100644
--- a/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
+++ b/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
@@ -78,7 +78,8 @@ namespace OpenSim.Region.Framework.Scenes
78 bool permissionToDelete) 78 bool permissionToDelete)
79 { 79 {
80 if (Enabled) 80 if (Enabled)
81 m_inventoryTicker.Stop(); 81 lock (m_inventoryTicker)
82 m_inventoryTicker.Stop();
82 83
83 lock (m_inventoryDeletes) 84 lock (m_inventoryDeletes)
84 { 85 {
@@ -93,7 +94,8 @@ namespace OpenSim.Region.Framework.Scenes
93 } 94 }
94 95
95 if (Enabled) 96 if (Enabled)
96 m_inventoryTicker.Start(); 97 lock (m_inventoryTicker)
98 m_inventoryTicker.Start();
97 99
98 // Visually remove it, even if it isnt really gone yet. This means that if we crash before the object 100 // Visually remove it, even if it isnt really gone yet. This means that if we crash before the object
99 // has gone to inventory, it will reappear in the region again on restart instead of being lost. 101 // has gone to inventory, it will reappear in the region again on restart instead of being lost.
diff --git a/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs b/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
index 0827672..1c71a99 100644
--- a/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
@@ -443,8 +443,8 @@ namespace OpenSim.Region.Framework.Scenes
443 int startX = (int) pRegionLocX - 1; 443 int startX = (int) pRegionLocX - 1;
444 int startY = (int) pRegionLocY - 1; 444 int startY = (int) pRegionLocY - 1;
445 445
446 int endX = (int) pRegionLocX + (int)extent.X + 1; 446 int endX = (int) pRegionLocX + (int)extent.X;
447 int endY = (int) pRegionLocY + (int)extent.Y + 1; 447 int endY = (int) pRegionLocY + (int)extent.Y;
448 448
449 for (int i=startX;i<endX;i++) 449 for (int i=startX;i<endX;i++)
450 { 450 {
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index 40e7471..b0d279c 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -3762,6 +3762,8 @@ if (m_shape != null) {
3762 lPos = AbsolutePosition; 3762 lPos = AbsolutePosition;
3763 } 3763 }
3764 3764
3765 // Causes this thread to dig into the Client Thread Data.
3766 // Remember your locking here!
3765 remoteClient.SendPrimTerseUpdate(m_regionHandle, 3767 remoteClient.SendPrimTerseUpdate(m_regionHandle,
3766 (ushort)(m_parentGroup.GetTimeDilation() * 3768 (ushort)(m_parentGroup.GetTimeDilation() *
3767 (float)ushort.MaxValue), LocalId, lPos, 3769 (float)ushort.MaxValue), LocalId, lPos,