diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/ServiceConnectorsOut/Land')
-rw-r--r-- | OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs index 5329933..2e22965 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Land/LocalLandServiceConnector.cs | |||
@@ -124,9 +124,22 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land | |||
124 | m_log.DebugFormat("[LAND CONNECTOR]: request for land data in {0} at {1}, {2}", | 124 | m_log.DebugFormat("[LAND CONNECTOR]: request for land data in {0} at {1}, {2}", |
125 | regionHandle, x, y); | 125 | regionHandle, x, y); |
126 | 126 | ||
127 | uint rx = 0, ry = 0; | ||
128 | Util.RegionHandleToWorldLoc(regionHandle, out rx, out ry); | ||
129 | |||
127 | foreach (Scene s in m_Scenes) | 130 | foreach (Scene s in m_Scenes) |
128 | { | 131 | { |
129 | if (s.RegionInfo.RegionHandle == regionHandle) | 132 | uint t = s.RegionInfo.WorldLocX; |
133 | if( rx < t) | ||
134 | continue; | ||
135 | t += s.RegionInfo.RegionSizeX; | ||
136 | if( rx >= t) | ||
137 | continue; | ||
138 | t = s.RegionInfo.WorldLocY; | ||
139 | if( ry < t) | ||
140 | continue; | ||
141 | t += s.RegionInfo.RegionSizeY; | ||
142 | if( ry < t) | ||
130 | { | 143 | { |
131 | LandData land = s.GetLandData(x, y); | 144 | LandData land = s.GetLandData(x, y); |
132 | regionAccess = s.RegionInfo.AccessLevel; | 145 | regionAccess = s.RegionInfo.AccessLevel; |