diff options
This hopefully fixes a long-standing annoying behavior related to neighbour regions going up & down while avies are logged in (mantis #2701, perhaps? maybe not). This is the bug mentioned 2 commits ago. If this proves to work well in OSGrid, there's a lot of old code cleaning to do.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index b42c46e..24cb48a 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -438,6 +438,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
438 | lock (m_neighbours) | 438 | lock (m_neighbours) |
439 | { | 439 | { |
440 | m_neighbours[i] = otherRegion; | 440 | m_neighbours[i] = otherRegion; |
441 | |||
441 | } | 442 | } |
442 | } | 443 | } |
443 | } | 444 | } |
@@ -469,6 +470,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
469 | { | 470 | { |
470 | //agent.ControllingClient.new | 471 | //agent.ControllingClient.new |
471 | //this.CommsManager.InterRegion.InformRegionOfChildAgent(otherRegion.RegionHandle, agent.ControllingClient.RequestClientInfo()); | 472 | //this.CommsManager.InterRegion.InformRegionOfChildAgent(otherRegion.RegionHandle, agent.ControllingClient.RequestClientInfo()); |
473 | |||
474 | List<ulong> old = new List<ulong>(); | ||
475 | old.Add(otherRegion.RegionHandle); | ||
476 | agent.DropOldNeighbours(old); | ||
472 | InformClientOfNeighbor(agent, otherRegion); | 477 | InformClientOfNeighbor(agent, otherRegion); |
473 | } | 478 | } |
474 | } | 479 | } |
@@ -2578,7 +2583,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2578 | /// <param name="region"></param> | 2583 | /// <param name="region"></param> |
2579 | public void InformClientOfNeighbor(ScenePresence presence, RegionInfo region) | 2584 | public void InformClientOfNeighbor(ScenePresence presence, RegionInfo region) |
2580 | { | 2585 | { |
2581 | m_sceneGridService.InformNeighborChildAgent(presence, region); | 2586 | m_sceneGridService.EnableNeighbourChildAgents(presence, m_neighbours); |
2582 | } | 2587 | } |
2583 | 2588 | ||
2584 | /// <summary> | 2589 | /// <summary> |