aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs20
1 files changed, 15 insertions, 5 deletions
diff --git a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
index 4d2379b..68bb3b5 100644
--- a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
@@ -191,14 +191,24 @@ namespace OpenSim.Region.Environment.Scenes
191 /// <summary> 191 /// <summary>
192 /// 192 ///
193 /// </summary> 193 /// </summary>
194 public void EnableNeighbourChildAgents(ScenePresence avatar) 194 public void EnableNeighbourChildAgents(ScenePresence avatar, List<RegionInfo> lstneighbours)
195 { 195 {
196 List<SimpleRegionInfo> neighbours = 196 List<SimpleRegionInfo> neighbours = new List<SimpleRegionInfo>();
197 m_commsProvider.GridService.RequestNeighbours(m_regionInfo.RegionLocX, m_regionInfo.RegionLocY); 197
198 //m_commsProvider.GridService.RequestNeighbours(m_regionInfo.RegionLocX, m_regionInfo.RegionLocY);
199 for (int i = 0; i < lstneighbours.Count; i++)
200 {
201 // We don't want to keep sending to regions that consistently fail on comms.
202 if (!(lstneighbours[i].commFailTF))
203 {
204 neighbours.Add(new SimpleRegionInfo(lstneighbours[i]));
205 }
206 }
198 if (neighbours != null) 207 if (neighbours != null)
199 { 208 {
200 for (int i = 0; i < neighbours.Count; i++) 209 for (int i = 0; i < neighbours.Count; i++)
201 { 210 {
211
202 AgentCircuitData agent = avatar.ControllingClient.RequestClientInfo(); 212 AgentCircuitData agent = avatar.ControllingClient.RequestClientInfo();
203 agent.BaseFolder = LLUUID.Zero; 213 agent.BaseFolder = LLUUID.Zero;
204 agent.InventoryFolder = LLUUID.Zero; 214 agent.InventoryFolder = LLUUID.Zero;
@@ -212,7 +222,7 @@ namespace OpenSim.Region.Environment.Scenes
212 } 222 }
213 } 223 }
214 } 224 }
215 public void InformNeighborChildAgent(ScenePresence avatar, RegionInfo region) 225 public void InformNeighborChildAgent(ScenePresence avatar, RegionInfo region, List<RegionInfo> neighbours)
216 { 226 {
217 AgentCircuitData agent = avatar.ControllingClient.RequestClientInfo(); 227 AgentCircuitData agent = avatar.ControllingClient.RequestClientInfo();
218 agent.BaseFolder = LLUUID.Zero; 228 agent.BaseFolder = LLUUID.Zero;
@@ -257,7 +267,7 @@ namespace OpenSim.Region.Environment.Scenes
257 267
258 268
259 List<SimpleRegionInfo> neighbours = new List<SimpleRegionInfo>(); 269 List<SimpleRegionInfo> neighbours = new List<SimpleRegionInfo>();
260 270 // This stays uncached because we don't already know about our neighbors at this point.
261 neighbours = m_commsProvider.GridService.RequestNeighbours(m_regionInfo.RegionLocX, m_regionInfo.RegionLocY); 271 neighbours = m_commsProvider.GridService.RequestNeighbours(m_regionInfo.RegionLocX, m_regionInfo.RegionLocY);
262 if (neighbours != null) 272 if (neighbours != null)
263 { 273 {