From c7f5a9476373260af44154103e488830f9f25bb4 Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Tue, 11 Dec 2007 22:20:22 +0000 Subject: put in a try block to catch the ForEach loop dying. --- OpenSim/Region/ClientStack/ClientView.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'OpenSim/Region/ClientStack') diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs index adb6b72..750226d 100644 --- a/OpenSim/Region/ClientStack/ClientView.cs +++ b/OpenSim/Region/ClientStack/ClientView.cs @@ -206,6 +206,8 @@ namespace OpenSim.Region.ClientStack public void Close() { // Pull Client out of Region + MainLog.Instance.Verbose("CLIENT", "Close has been called"); + m_scene.RemoveClient(AgentId); // Send the STOP packet @@ -215,6 +217,8 @@ namespace OpenSim.Region.ClientStack // FLUSH Packets PacketQueue.Close(); PacketQueue.Flush(); + + Thread.Sleep(2000); // Shut down timers AckTimer.Stop(); @@ -223,7 +227,6 @@ namespace OpenSim.Region.ClientStack // This is just to give the client a reasonable chance of // flushing out all it's packets. There should probably // be a better mechanism here - Thread.Sleep(2000); ClientThread.Abort(); } -- cgit v1.1