diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ClientStack/ClientView.cs | 22 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/PacketQueue.cs | 4 |
2 files changed, 13 insertions, 13 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs index 8220ae8..346bafc 100644 --- a/OpenSim/Region/ClientStack/ClientView.cs +++ b/OpenSim/Region/ClientStack/ClientView.cs | |||
@@ -336,7 +336,7 @@ namespace OpenSim.Region.ClientStack | |||
336 | 336 | ||
337 | # region Client Methods | 337 | # region Client Methods |
338 | 338 | ||
339 | private void CloseCleanup(bool ShutdownCircult) | 339 | private void CloseCleanup(bool shutdownCircuit) |
340 | { | 340 | { |
341 | m_scene.RemoveClient(AgentId); | 341 | m_scene.RemoveClient(AgentId); |
342 | 342 | ||
@@ -347,10 +347,7 @@ namespace OpenSim.Region.ClientStack | |||
347 | DisableSimulatorPacket disable = (DisableSimulatorPacket)PacketPool.Instance.GetPacket(PacketType.DisableSimulator); | 347 | DisableSimulatorPacket disable = (DisableSimulatorPacket)PacketPool.Instance.GetPacket(PacketType.DisableSimulator); |
348 | OutPacket(disable, ThrottleOutPacketType.Task); | 348 | OutPacket(disable, ThrottleOutPacketType.Task); |
349 | 349 | ||
350 | |||
351 | // FLUSH Packets | ||
352 | m_packetQueue.Close(); | 350 | m_packetQueue.Close(); |
353 | m_packetQueue.Flush(); | ||
354 | 351 | ||
355 | Thread.Sleep(2000); | 352 | Thread.Sleep(2000); |
356 | 353 | ||
@@ -370,7 +367,7 @@ namespace OpenSim.Region.ClientStack | |||
370 | // If we're not shutting down the circuit, then this is the last time we'll go here. | 367 | // If we're not shutting down the circuit, then this is the last time we'll go here. |
371 | // If we are shutting down the circuit, the UDP Server will come back here with | 368 | // If we are shutting down the circuit, the UDP Server will come back here with |
372 | // ShutDownCircuit = false | 369 | // ShutDownCircuit = false |
373 | if (!(ShutdownCircult)) | 370 | if (!(shutdownCircuit)) |
374 | { | 371 | { |
375 | GC.Collect(); | 372 | GC.Collect(); |
376 | m_clientThread.Abort(); | 373 | m_clientThread.Abort(); |
@@ -381,17 +378,19 @@ namespace OpenSim.Region.ClientStack | |||
381 | /// Close down the client view. This *must* be the last method called, since the last # | 378 | /// Close down the client view. This *must* be the last method called, since the last # |
382 | /// statement of CloseCleanup() aborts the thread. | 379 | /// statement of CloseCleanup() aborts the thread. |
383 | /// </summary> | 380 | /// </summary> |
384 | /// <param name="ShutdownCircult"></param> | 381 | /// <param name="shutdownCircuit"></param> |
385 | public void Close(bool ShutdownCircult) | 382 | public void Close(bool shutdownCircuit) |
386 | { | 383 | { |
387 | // Pull Client out of Region | 384 | // Pull Client out of Region |
388 | m_log.Info("[CLIENT]: Close has been called"); | 385 | m_log.Info("[CLIENT]: Close has been called"); |
389 | 386 | ||
390 | //raiseevent on the packet server to Shutdown the circuit | 387 | //raiseevent on the packet server to Shutdown the circuit |
391 | if (ShutdownCircult) | 388 | if (shutdownCircuit) |
389 | { | ||
392 | OnConnectionClosed(this); | 390 | OnConnectionClosed(this); |
391 | } | ||
393 | 392 | ||
394 | CloseCleanup(ShutdownCircult); | 393 | CloseCleanup(shutdownCircuit); |
395 | } | 394 | } |
396 | 395 | ||
397 | public void Kick(string message) | 396 | public void Kick(string message) |
@@ -503,7 +502,7 @@ namespace OpenSim.Region.ClientStack | |||
503 | protected virtual void ClientLoop() | 502 | protected virtual void ClientLoop() |
504 | { | 503 | { |
505 | m_log.Info("[CLIENT]: Entered loop"); | 504 | m_log.Info("[CLIENT]: Entered loop"); |
506 | while (true) | 505 | while( true ) |
507 | { | 506 | { |
508 | QueItem nextPacket = m_packetQueue.Dequeue(); | 507 | QueItem nextPacket = m_packetQueue.Dequeue(); |
509 | if (nextPacket.Incoming) | 508 | if (nextPacket.Incoming) |
@@ -583,7 +582,6 @@ namespace OpenSim.Region.ClientStack | |||
583 | { | 582 | { |
584 | //session/circuit not authorised | 583 | //session/circuit not authorised |
585 | m_log.Info("[CLIENT]: New user request denied to " + m_userEndPoint.ToString()); | 584 | m_log.Info("[CLIENT]: New user request denied to " + m_userEndPoint.ToString()); |
586 | m_packetQueue.Flush(); | ||
587 | m_packetQueue.Close(); | 585 | m_packetQueue.Close(); |
588 | m_clientThread.Abort(); | 586 | m_clientThread.Abort(); |
589 | } | 587 | } |
@@ -1082,7 +1080,7 @@ namespace OpenSim.Region.ClientStack | |||
1082 | StartPingCheckPacket pc = (StartPingCheckPacket)PacketPool.Instance.GetPacket(PacketType.StartPingCheck); | 1080 | StartPingCheckPacket pc = (StartPingCheckPacket)PacketPool.Instance.GetPacket(PacketType.StartPingCheck); |
1083 | pc.PingID.PingID = seq; | 1081 | pc.PingID.PingID = seq; |
1084 | pc.Header.Reliable = false; | 1082 | pc.Header.Reliable = false; |
1085 | OutPacket(pc, ThrottleOutPacketType.Task); | 1083 | OutPacket(pc, ThrottleOutPacketType.Unknown); |
1086 | } | 1084 | } |
1087 | 1085 | ||
1088 | public void SendKillObject(ulong regionHandle, uint localID) | 1086 | public void SendKillObject(ulong regionHandle, uint localID) |
diff --git a/OpenSim/Region/ClientStack/PacketQueue.cs b/OpenSim/Region/ClientStack/PacketQueue.cs index 4673082..1a8450f 100644 --- a/OpenSim/Region/ClientStack/PacketQueue.cs +++ b/OpenSim/Region/ClientStack/PacketQueue.cs | |||
@@ -182,7 +182,7 @@ namespace OpenSim.Region.ClientStack | |||
182 | return SendQueue.Dequeue(); | 182 | return SendQueue.Dequeue(); |
183 | } | 183 | } |
184 | 184 | ||
185 | public void Flush() | 185 | private void Flush() |
186 | { | 186 | { |
187 | lock (this) | 187 | lock (this) |
188 | { | 188 | { |
@@ -224,6 +224,8 @@ namespace OpenSim.Region.ClientStack | |||
224 | 224 | ||
225 | public void Close() | 225 | public void Close() |
226 | { | 226 | { |
227 | Flush(); | ||
228 | |||
227 | m_enabled = false; | 229 | m_enabled = false; |
228 | throttleTimer.Stop(); | 230 | throttleTimer.Stop(); |
229 | 231 | ||