From 197650ed0b60bef0e25ac6dee52b7a79a6da1d3b Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Fri, 6 Nov 2020 19:35:50 +0000 Subject: [PATCH] do remove previus parcels (as known at the moment) when loading oar --- .../CoreModules/World/Land/LandManagementModule.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index a11502e587..f3c95503de 100755 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs @@ -865,12 +865,12 @@ namespace OpenSim.Region.CoreModules.World.Land /// public void Clear(bool setupDefaultParcel) { - Dictionary landworkList; + List landworkList = new List(m_landList.Count); // move to work pointer since we are deleting it all lock (m_landList) { - landworkList = m_landList; - m_landList.Clear(); + foreach (ILandObject lo in m_landList.Values) + landworkList.Add(lo.LandData.GlobalID); } // this 2 methods have locks (now) @@ -880,10 +880,10 @@ namespace OpenSim.Region.CoreModules.World.Land CreateDefaultParcel(); // fire outside events unlocked - foreach (ILandObject lo in landworkList.Values) + foreach (UUID id in landworkList) { //m_scene.SimulationDataService.RemoveLandObject(lo.LandData.GlobalID); - m_scene.EventManager.TriggerLandObjectRemoved(lo.LandData.GlobalID); + m_scene.EventManager.TriggerLandObjectRemoved(id); } landworkList.Clear(); }