Merge branch 'master' into careminster

Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
avinationmerge
Melanie 2012-06-08 00:14:39 +01:00
commit c5af3e384c
4 changed files with 25 additions and 25 deletions

View File

@ -486,10 +486,10 @@ namespace OpenSim
else
presence.ControllingClient.Kick("\nYou have been logged out by an administrator.\n");
// ...and close on our side
presence.Scene.IncomingCloseAgent(presence.UUID);
presence.ControllingClient.Close();
}
}
MainConsole.Instance.Output("");
}

View File

@ -1233,7 +1233,7 @@ namespace OpenSim.Region.CoreModules.World.Land
if (land.LandData.LocalID == LandData.LocalID)
{
Vector3 pos = m_scene.GetNearestAllowedPosition(presence, land);
presence.TeleportWithMomentum(pos);
presence.TeleportWithMomentum(pos, null);
presence.ControllingClient.SendAlertMessage("You have been ejected from this land");
}
}

View File

@ -973,7 +973,7 @@ namespace OpenSim.Region.Framework.Scenes
else
{
m_log.InfoFormat(
"[INTERGRID]: Got notice about far away Region: {0} at ({1}, {2})",
"[SCENE]: Got notice about far away Region: {0} at ({1}, {2})",
otherRegion.RegionName, otherRegion.RegionLocX, otherRegion.RegionLocY);
}
}
@ -3388,6 +3388,22 @@ namespace OpenSim.Region.Framework.Scenes
{
isChildAgent = avatar.IsChildAgent;
// Don't do this to root agents, it's not nice for the viewer
if (closeChildAgents && isChildAgent)
{
// Tell a single agent to disconnect from the region.
IEventQueue eq = RequestModuleInterface<IEventQueue>();
if (eq != null)
{
eq.DisableSimulator(RegionInfo.RegionHandle, avatar.UUID);
}
else
{
avatar.ControllingClient.SendShutdownConnectionNotice();
}
}
// Only applies to root agents.
if (avatar.ParentID != 0)
{
avatar.StandUp();
@ -4227,23 +4243,7 @@ namespace OpenSim.Region.Framework.Scenes
m_sceneGraph.removeUserCount(true);
}
// Don't do this to root agents on logout, it's not nice for the viewer
if (presence.IsChildAgent)
{
// Tell a single agent to disconnect from the region.
IEventQueue eq = RequestModuleInterface<IEventQueue>();
if (eq != null)
{
eq.DisableSimulator(RegionInfo.RegionHandle, agentID);
}
else
presence.ControllingClient.SendShutdownConnectionNotice();
presence.ControllingClient.Close(false);
}
else if (!childOnly)
{
presence.ControllingClient.Close(true);
}
presence.ControllingClient.Close();
return true;
}

View File

@ -84,16 +84,16 @@ namespace OpenSim.Region.Framework.Scenes
if (neighbourService != null)
neighbour = neighbourService.HelloNeighbour(regionhandle, region);
else
m_log.DebugFormat("[SCS]: No neighbour service provided for informing neigbhours of this region");
m_log.DebugFormat("[SCENE COMMUNICATION SERVICE]: No neighbour service provided for informing neigbhours of this region");
if (neighbour != null)
{
// m_log.DebugFormat("[INTERGRID]: Successfully informed neighbour {0}-{1} that I'm here", x / Constants.RegionSize, y / Constants.RegionSize);
m_log.DebugFormat("[SCENE COMMUNICATION SERVICE]: Successfully informed neighbour {0}-{1} that I'm here", x / Constants.RegionSize, y / Constants.RegionSize);
m_scene.EventManager.TriggerOnRegionUp(neighbour);
}
else
{
m_log.InfoFormat("[INTERGRID]: Failed to inform neighbour {0}-{1} that I'm here.", x / Constants.RegionSize, y / Constants.RegionSize);
m_log.InfoFormat("[SCENE COMMUNICATION SERVICE]: Failed to inform neighbour {0}-{1} that I'm here.", x / Constants.RegionSize, y / Constants.RegionSize);
}
}
@ -102,7 +102,7 @@ namespace OpenSim.Region.Framework.Scenes
//m_log.Info("[INTER]: " + debugRegionName + ": SceneCommunicationService: Sending InterRegion Notification that region is up " + region.RegionName);
List<GridRegion> neighbours = m_scene.GridService.GetNeighbours(m_scene.RegionInfo.ScopeID, m_scene.RegionInfo.RegionID);
//m_log.DebugFormat("[INTERGRID]: Informing {0} neighbours that this region is up", neighbours.Count);
m_log.DebugFormat("[SCENE COMMUNICATION SERVICE]: Informing {0} neighbours that this region is up", neighbours.Count);
foreach (GridRegion n in neighbours)
{
InformNeighbourThatRegionUpDelegate d = InformNeighboursThatRegionIsUpAsync;