diff options
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs b/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs index 6ab3def..998a0f1 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs | |||
@@ -396,9 +396,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
396 | if (m_PendingAcks.Count < 250) | 396 | if (m_PendingAcks.Count < 250) |
397 | { | 397 | { |
398 | if (!m_PendingAcksMap.ContainsKey(packet.Header.Sequence)) | 398 | if (!m_PendingAcksMap.ContainsKey(packet.Header.Sequence)) |
399 | { | ||
399 | m_PendingAcks.Add(packet.Header.Sequence); | 400 | m_PendingAcks.Add(packet.Header.Sequence); |
400 | m_PendingAcksMap.Add(packet.Header.Sequence, | 401 | m_PendingAcksMap.Add(packet.Header.Sequence, |
401 | packet.Header.Sequence); | 402 | packet.Header.Sequence); |
403 | } | ||
402 | return; | 404 | return; |
403 | } | 405 | } |
404 | } | 406 | } |
@@ -413,9 +415,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
413 | if (m_PendingAcks.Count < 250) | 415 | if (m_PendingAcks.Count < 250) |
414 | { | 416 | { |
415 | if (!m_PendingAcksMap.ContainsKey(packet.Header.Sequence)) | 417 | if (!m_PendingAcksMap.ContainsKey(packet.Header.Sequence)) |
418 | { | ||
416 | m_PendingAcks.Add(packet.Header.Sequence); | 419 | m_PendingAcks.Add(packet.Header.Sequence); |
417 | m_PendingAcksMap.Add(packet.Header.Sequence, | 420 | m_PendingAcksMap.Add(packet.Header.Sequence, |
418 | packet.Header.Sequence); | 421 | packet.Header.Sequence); |
422 | } | ||
419 | return; | 423 | return; |
420 | } | 424 | } |
421 | } | 425 | } |
@@ -587,9 +591,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
587 | { | 591 | { |
588 | m_UnackedBytes = (-1 * m_UnackedBytes); | 592 | m_UnackedBytes = (-1 * m_UnackedBytes); |
589 | SendPacketStats(); | 593 | SendPacketStats(); |
590 | m_NeedAck.Clear(); | 594 | lock (m_NeedAck) |
591 | m_PendingAcks.Clear(); | 595 | { |
592 | m_PendingAcksMap.Clear(); | 596 | m_NeedAck.Clear(); |
597 | m_PendingAcks.Clear(); | ||
598 | m_PendingAcksMap.Clear(); | ||
599 | } | ||
593 | m_Sequence += 1000000; | 600 | m_Sequence += 1000000; |
594 | } | 601 | } |
595 | 602 | ||