diff options
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs b/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs index d4377ad..c020b38 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs | |||
@@ -311,7 +311,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
311 | 311 | ||
312 | // Packets this old get resent | 312 | // Packets this old get resent |
313 | // | 313 | // |
314 | if ((now - data.TickCount) > m_ResendTimeout && data.Sequence != 0) | 314 | if ((now - data.TickCount) > m_ResendTimeout && data.Sequence != 0 && !m_PacketQueue.Contains(data.Sequence)) |
315 | { | 315 | { |
316 | if (resent < 20) | 316 | if (resent < 20) |
317 | { | 317 | { |
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs b/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs index 46d5610..5ed92fe 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLPacketQueue.cs | |||
@@ -251,6 +251,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
251 | ; | 251 | ; |
252 | } | 252 | } |
253 | 253 | ||
254 | public bool Contains(uint sequence) | ||
255 | { | ||
256 | return contents.Contains(sequence); | ||
257 | } | ||
258 | |||
254 | public void Flush() | 259 | public void Flush() |
255 | { | 260 | { |
256 | lock (this) | 261 | lock (this) |