aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Modules
diff options
context:
space:
mode:
authorAdam Frisby2008-11-24 15:14:33 +0000
committerAdam Frisby2008-11-24 15:14:33 +0000
commit2a8ff937d513abbd84a96cbfdbe74bc710b60e6a (patch)
treede115ac9c9ebc6266d44f8de673a1fde6f1b9848 /OpenSim/Region/Environment/Modules
parent* Refactored a number of locks into EntityManager to limit the scope of the l... (diff)
downloadopensim-SC-2a8ff937d513abbd84a96cbfdbe74bc710b60e6a.zip
opensim-SC-2a8ff937d513abbd84a96cbfdbe74bc710b60e6a.tar.gz
opensim-SC-2a8ff937d513abbd84a96cbfdbe74bc710b60e6a.tar.bz2
opensim-SC-2a8ff937d513abbd84a96cbfdbe74bc710b60e6a.tar.xz
* Removed more locks on Entities
* Entities should now in theory be lock-free externally. * Other properties may cause blocking however[?]. * ScenePresence maintains separate locks so isn't fixed by this commit.
Diffstat (limited to 'OpenSim/Region/Environment/Modules')
-rw-r--r--OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs11
1 files changed, 4 insertions, 7 deletions
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
index d33201f..68aee86 100644
--- a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
@@ -664,16 +664,13 @@ namespace OpenSim.Region.Environment.Modules.World.Land
664 public void UpdateLandPrimCounts() 664 public void UpdateLandPrimCounts()
665 { 665 {
666 ResetAllLandPrimCounts(); 666 ResetAllLandPrimCounts();
667 lock (m_scene.Entities) 667 foreach (EntityBase obj in m_scene.Entities)
668 { 668 {
669 foreach (EntityBase obj in m_scene.Entities) 669 if (obj != null)
670 { 670 {
671 if (obj != null) 671 if ((obj is SceneObjectGroup) && !obj.IsDeleted && !((SceneObjectGroup) obj).IsAttachment)
672 { 672 {
673 if ((obj is SceneObjectGroup) && !((SceneObjectGroup)obj).IsDeleted && !((SceneObjectGroup)obj).IsAttachment) 673 m_scene.EventManager.TriggerParcelPrimCountAdd((SceneObjectGroup) obj);
674 {
675 m_scene.EventManager.TriggerParcelPrimCountAdd((SceneObjectGroup)obj);
676 }
677 } 674 }
678 } 675 }
679 } 676 }