diff options
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index c32de62..09ece7d 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | |||
@@ -973,7 +973,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
973 | { | 973 | { |
974 | try | 974 | try |
975 | { | 975 | { |
976 | return m_landList[m_landIDList[x / 4, y / 4]]; | 976 | return m_landList[m_landIDList[x / LandUnit, y / LandUnit]]; |
977 | } | 977 | } |
978 | catch (IndexOutOfRangeException) | 978 | catch (IndexOutOfRangeException) |
979 | { | 979 | { |
@@ -2044,7 +2044,13 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
2044 | // for this region or for somewhere else? | 2044 | // for this region or for somewhere else? |
2045 | if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle) | 2045 | if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle) |
2046 | { | 2046 | { |
2047 | extLandData.LandData = this.GetLandObject(extLandData.X, extLandData.Y).LandData; | 2047 | ILandObject extLandObject = this.GetLandObject(extLandData.X, extLandData.Y); |
2048 | if (extLandObject == null) | ||
2049 | { | ||
2050 | m_log.DebugFormat("[LAND MANAGEMENT MODULE]: ParcelInfoRequest: a FakeParcelID points to outside the region"); | ||
2051 | return null; | ||
2052 | } | ||
2053 | extLandData.LandData = extLandObject.LandData; | ||
2048 | extLandData.RegionAccess = m_scene.RegionInfo.AccessLevel; | 2054 | extLandData.RegionAccess = m_scene.RegionInfo.AccessLevel; |
2049 | } | 2055 | } |
2050 | else | 2056 | else |