diff options
author | Justin Clark-Casey (justincc) | 2011-03-31 23:56:26 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2011-03-31 23:56:26 +0100 |
commit | 4d0cffa06e1c4071d137834e1d5c2cd06c933441 (patch) | |
tree | d9fdd020d776c1329a0236722946c2b69250dd2b | |
parent | suspend check that IAR control file is loaded for now (diff) | |
download | opensim-SC-4d0cffa06e1c4071d137834e1d5c2cd06c933441.zip opensim-SC-4d0cffa06e1c4071d137834e1d5c2cd06c933441.tar.gz opensim-SC-4d0cffa06e1c4071d137834e1d5c2cd06c933441.tar.bz2 opensim-SC-4d0cffa06e1c4071d137834e1d5c2cd06c933441.tar.xz |
If the prim count gets an object with invalid bounds, don't try to count it.
This appears to be the more probable explanation for some failures seen. Either we're counting attachments which are temporarily out of bounds (shouldn't be due to the IsAttachment) check or we're counting scene objects which have out of bounds co-ordinates (seems more likely)
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs | 5 |
2 files changed, 8 insertions, 3 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index fac2574..2b5f7a0 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | |||
@@ -766,9 +766,9 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
766 | } | 766 | } |
767 | catch (IndexOutOfRangeException) | 767 | catch (IndexOutOfRangeException) |
768 | { | 768 | { |
769 | m_log.WarnFormat( | 769 | // m_log.WarnFormat( |
770 | "[LAND MANAGEMENT MODULE]: Tried to retrieve land object from out of bounds co-ordinate ({0},{1}) in {2}", | 770 | // "[LAND MANAGEMENT MODULE]: Tried to retrieve land object from out of bounds co-ordinate ({0},{1}) in {2}", |
771 | x, y, m_scene.RegionInfo.RegionName); | 771 | // x, y, m_scene.RegionInfo.RegionName); |
772 | 772 | ||
773 | return null; | 773 | return null; |
774 | } | 774 | } |
diff --git a/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs b/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs index d1e2328..f07ae31 100644 --- a/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/PrimCountModule.cs | |||
@@ -183,6 +183,11 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
183 | 183 | ||
184 | Vector3 pos = obj.AbsolutePosition; | 184 | Vector3 pos = obj.AbsolutePosition; |
185 | ILandObject landObject = m_Scene.LandChannel.GetLandObject(pos.X, pos.Y); | 185 | ILandObject landObject = m_Scene.LandChannel.GetLandObject(pos.X, pos.Y); |
186 | |||
187 | // If for some reason there is no land object (perhaps the object is out of bounds) then we can't count it | ||
188 | if (landObject == null) | ||
189 | return; | ||
190 | |||
186 | LandData landData = landObject.LandData; | 191 | LandData landData = landObject.LandData; |
187 | 192 | ||
188 | // m_log.DebugFormat( | 193 | // m_log.DebugFormat( |