aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs15
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandObject.cs2
-rw-r--r--OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs12
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs1
4 files changed, 18 insertions, 12 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
index 057e204..a2c7c83 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
@@ -679,6 +679,7 @@ namespace OpenSim.Region.CoreModules.World.Land
679 public void removeLandObject(int local_id) 679 public void removeLandObject(int local_id)
680 { 680 {
681 ILandObject land; 681 ILandObject land;
682 UUID landGlobalID = UUID.Zero;
682 lock (m_landList) 683 lock (m_landList)
683 { 684 {
684 for (int x = 0; x < m_landIDList.GetLength(0); x++) 685 for (int x = 0; x < m_landIDList.GetLength(0); x++)
@@ -697,12 +698,18 @@ namespace OpenSim.Region.CoreModules.World.Land
697 698
698 land = m_landList[local_id]; 699 land = m_landList[local_id];
699 m_landList.Remove(local_id); 700 m_landList.Remove(local_id);
700 if(land.LandData != null) 701 if(land != null && land.LandData != null)
701 m_landUUIDList.Remove(land.LandData.GlobalID); 702 {
702 land.Clear(); 703 landGlobalID = land.LandData.GlobalID;
704 m_landUUIDList.Remove(landGlobalID);
705 }
703 } 706 }
704 707
705 m_scene.EventManager.TriggerLandObjectRemoved(land.LandData.GlobalID); 708 if(landGlobalID != UUID.Zero)
709 {
710 m_scene.EventManager.TriggerLandObjectRemoved(landGlobalID);
711 land.Clear();
712 }
706 } 713 }
707 714
708 /// <summary> 715 /// <summary>
diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
index b534a2b..74b10ed 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
@@ -292,8 +292,6 @@ namespace OpenSim.Region.CoreModules.World.Land
292 LandData.OwnerID = owner_id; 292 LandData.OwnerID = owner_id;
293 if (is_group_owned) 293 if (is_group_owned)
294 LandData.GroupID = owner_id; 294 LandData.GroupID = owner_id;
295 else
296 LandData.GroupID = UUID.Zero;
297 295
298 LandData.IsGroupOwned = is_group_owned; 296 LandData.IsGroupOwned = is_group_owned;
299 297
diff --git a/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs b/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs
index 79c4713..5a2a173 100644
--- a/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs
@@ -123,8 +123,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
123 "Objects", 123 "Objects",
124 false, 124 false,
125 "delete object pos", 125 "delete object pos",
126 "delete object pos <start-coord> to <end-coord>", 126 "delete object pos <start x, start y , start z> <end x, end y, end z>",
127 "Delete scene objects within the given area.", 127 "Delete scene objects within the given volume.",
128 ConsoleUtil.CoordHelp, 128 ConsoleUtil.CoordHelp,
129 HandleDeleteObject); 129 HandleDeleteObject);
130 130
@@ -162,8 +162,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
162 "Objects", 162 "Objects",
163 false, 163 false,
164 "show object pos", 164 "show object pos",
165 "show object pos [--full] <start-coord> to <end-coord>", 165 "show object pos [--full] <start x, start y , start z> <end x, end y, end z>",
166 "Show details of scene objects within the given area.", 166 "Show details of scene objects within give volume",
167 "The --full option will print out information on all the parts of the object.\n" 167 "The --full option will print out information on all the parts of the object.\n"
168 + "For yet more detailed part information, use the \"show part\" commands.\n" 168 + "For yet more detailed part information, use the \"show part\" commands.\n"
169 + ConsoleUtil.CoordHelp, 169 + ConsoleUtil.CoordHelp,
@@ -189,8 +189,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands
189 "Objects", 189 "Objects",
190 false, 190 false,
191 "show part pos", 191 "show part pos",
192 "show part pos <start-coord> to <end-coord>", 192 "show part pos <start x, start y , start z> <end x, end y, end z>",
193 "Show details of scene object parts within the given area.", 193 "Show details of scene object parts within the given volume.",
194 ConsoleUtil.CoordHelp, 194 ConsoleUtil.CoordHelp,
195 HandleShowPartByPos); 195 HandleShowPartByPos);
196 196
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 805c9ad..2731274 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -4880,6 +4880,7 @@ namespace OpenSim.Region.Framework.Scenes
4880 PhysicsActor.OnOutOfBounds += OutOfBoundsCall; // Called for PhysicsActors when there's something wrong 4880 PhysicsActor.OnOutOfBounds += OutOfBoundsCall; // Called for PhysicsActors when there's something wrong
4881 PhysicsActor.SubscribeEvents(100); 4881 PhysicsActor.SubscribeEvents(100);
4882 PhysicsActor.LocalID = LocalId; 4882 PhysicsActor.LocalID = LocalId;
4883 PhysicsActor.SetAlwaysRun = m_setAlwaysRun;
4883 } 4884 }
4884 4885
4885 private void OutOfBoundsCall(Vector3 pos) 4886 private void OutOfBoundsCall(Vector3 pos)