diff options
author | Tom Grimshaw | 2010-05-17 14:14:19 -0700 |
---|---|---|
committer | Tom Grimshaw | 2010-05-17 14:14:19 -0700 |
commit | 8f838c722da978da646fcef59a5af767840832bb (patch) | |
tree | 83b22c669659e26a16ca14a8ad6b6c292b805af1 /OpenSim/Region | |
parent | Merge branch 'master' into careminster-presence-refactor (diff) | |
download | opensim-SC_OLD-8f838c722da978da646fcef59a5af767840832bb.zip opensim-SC_OLD-8f838c722da978da646fcef59a5af767840832bb.tar.gz opensim-SC_OLD-8f838c722da978da646fcef59a5af767840832bb.tar.bz2 opensim-SC_OLD-8f838c722da978da646fcef59a5af767840832bb.tar.xz |
When killing a zombie session, don't send the stop packet since it often has the effect of killing a newly connected client.
Diffstat (limited to 'OpenSim/Region')
5 files changed, 31 insertions, 4 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index d5fda9d..5670a78 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -502,18 +502,30 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
502 | 502 | ||
503 | #region Client Methods | 503 | #region Client Methods |
504 | 504 | ||
505 | |||
505 | /// <summary> | 506 | /// <summary> |
506 | /// Shut down the client view | 507 | /// Shut down the client view |
507 | /// </summary> | 508 | /// </summary> |
508 | public void Close() | 509 | public void Close() |
509 | { | 510 | { |
511 | Close(true); | ||
512 | } | ||
513 | |||
514 | /// <summary> | ||
515 | /// Shut down the client view | ||
516 | /// </summary> | ||
517 | public void Close(bool sendStop) | ||
518 | { | ||
510 | m_log.DebugFormat( | 519 | m_log.DebugFormat( |
511 | "[CLIENT]: Close has been called for {0} attached to scene {1}", | 520 | "[CLIENT]: Close has been called for {0} attached to scene {1}", |
512 | Name, m_scene.RegionInfo.RegionName); | 521 | Name, m_scene.RegionInfo.RegionName); |
513 | 522 | ||
514 | // Send the STOP packet | 523 | if (sendStop) |
515 | DisableSimulatorPacket disable = (DisableSimulatorPacket)PacketPool.Instance.GetPacket(PacketType.DisableSimulator); | 524 | { |
516 | OutPacket(disable, ThrottleOutPacketType.Unknown); | 525 | // Send the STOP packet |
526 | DisableSimulatorPacket disable = (DisableSimulatorPacket)PacketPool.Instance.GetPacket(PacketType.DisableSimulator); | ||
527 | OutPacket(disable, ThrottleOutPacketType.Unknown); | ||
528 | } | ||
517 | 529 | ||
518 | IsActive = false; | 530 | IsActive = false; |
519 | 531 | ||
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs index 09611af..84385ad 100644 --- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs +++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs | |||
@@ -831,6 +831,11 @@ namespace OpenSim.Region.Examples.SimpleModule | |||
831 | 831 | ||
832 | public void Close() | 832 | public void Close() |
833 | { | 833 | { |
834 | Close(true); | ||
835 | } | ||
836 | |||
837 | public void Close(bool sendStop) | ||
838 | { | ||
834 | } | 839 | } |
835 | 840 | ||
836 | public void Start() | 841 | public void Start() |
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 3d59615..1b08c50 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -3489,7 +3489,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3489 | { | 3489 | { |
3490 | // We have a zombie from a crashed session. Kill it. | 3490 | // We have a zombie from a crashed session. Kill it. |
3491 | m_log.DebugFormat("[SCENE]: Zombie scene presence detected for {0} in {1}", agent.AgentID, RegionInfo.RegionName); | 3491 | m_log.DebugFormat("[SCENE]: Zombie scene presence detected for {0} in {1}", agent.AgentID, RegionInfo.RegionName); |
3492 | sp.ControllingClient.Close(); | 3492 | sp.ControllingClient.Close(false); |
3493 | } | 3493 | } |
3494 | } | 3494 | } |
3495 | 3495 | ||
diff --git a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs index 69e78b3..7c0fe4c 100644 --- a/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs +++ b/OpenSim/Region/OptionalModules/Agent/InternetRelayClientView/Server/IRCClientView.cs | |||
@@ -885,6 +885,11 @@ namespace OpenSim.Region.OptionalModules.Agent.InternetRelayClientView.Server | |||
885 | 885 | ||
886 | public void Close() | 886 | public void Close() |
887 | { | 887 | { |
888 | Close(true); | ||
889 | } | ||
890 | |||
891 | public void Close(bool sendStop) | ||
892 | { | ||
888 | Disconnect(); | 893 | Disconnect(); |
889 | } | 894 | } |
890 | 895 | ||
diff --git a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs index 6360c99..4323c94 100644 --- a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs +++ b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs | |||
@@ -845,6 +845,11 @@ namespace OpenSim.Region.OptionalModules.World.NPC | |||
845 | 845 | ||
846 | public void Close() | 846 | public void Close() |
847 | { | 847 | { |
848 | Close(true); | ||
849 | } | ||
850 | |||
851 | public void Close(bool sendStop) | ||
852 | { | ||
848 | } | 853 | } |
849 | 854 | ||
850 | public void Start() | 855 | public void Start() |