diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.cs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 2f961c1..7175d83 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -1288,6 +1288,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1288 | CommsManager.LogOffUser(agentID, RegionInfo.RegionID, RegionInfo.RegionHandle, | 1288 | CommsManager.LogOffUser(agentID, RegionInfo.RegionID, RegionInfo.RegionHandle, |
1289 | avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y, | 1289 | avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y, |
1290 | avatar.AbsolutePosition.Z); | 1290 | avatar.AbsolutePosition.Z); |
1291 | m_sceneGridService.SendCloseChildAgentConnections(avatar); | ||
1291 | } | 1292 | } |
1292 | } | 1293 | } |
1293 | catch (NullReferenceException) | 1294 | catch (NullReferenceException) |
@@ -1389,6 +1390,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1389 | m_sceneGridService.OnCloseAgentConnection += CloseConnection; | 1390 | m_sceneGridService.OnCloseAgentConnection += CloseConnection; |
1390 | m_sceneGridService.OnRegionUp += OtherRegionUp; | 1391 | m_sceneGridService.OnRegionUp += OtherRegionUp; |
1391 | m_sceneGridService.OnChildAgentUpdate += IncomingChildAgentDataUpdate; | 1392 | m_sceneGridService.OnChildAgentUpdate += IncomingChildAgentDataUpdate; |
1393 | |||
1392 | 1394 | ||
1393 | 1395 | ||
1394 | m_sceneGridService.KillObject = SendKillObject; | 1396 | m_sceneGridService.KillObject = SendKillObject; |
@@ -1509,7 +1511,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1509 | /// </summary> | 1511 | /// </summary> |
1510 | /// <param name="regionHandle"></param> | 1512 | /// <param name="regionHandle"></param> |
1511 | /// <param name="agentID"></param> | 1513 | /// <param name="agentID"></param> |
1512 | public void CloseConnection(ulong regionHandle, LLUUID agentID) | 1514 | public bool CloseConnection(ulong regionHandle, LLUUID agentID) |
1513 | { | 1515 | { |
1514 | if (regionHandle == m_regionHandle) | 1516 | if (regionHandle == m_regionHandle) |
1515 | { | 1517 | { |
@@ -1527,8 +1529,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
1527 | // Tell a single agent to disconnect from the region. | 1529 | // Tell a single agent to disconnect from the region. |
1528 | libsecondlife.Packets.DisableSimulatorPacket disable = (libsecondlife.Packets.DisableSimulatorPacket) PacketPool.Instance.GetPacket(libsecondlife.Packets.PacketType.DisableSimulator); | 1530 | libsecondlife.Packets.DisableSimulatorPacket disable = (libsecondlife.Packets.DisableSimulatorPacket) PacketPool.Instance.GetPacket(libsecondlife.Packets.PacketType.DisableSimulator); |
1529 | presence.ControllingClient.OutPacket(disable, ThrottleOutPacketType.Task); | 1531 | presence.ControllingClient.OutPacket(disable, ThrottleOutPacketType.Task); |
1532 | presence.ControllingClient.Close(true); | ||
1530 | } | 1533 | } |
1531 | } | 1534 | } |
1535 | return true; | ||
1532 | } | 1536 | } |
1533 | 1537 | ||
1534 | /// <summary> | 1538 | /// <summary> |