* Reverted bugfx that really should go into separate commit
parent
5e757d2ad1
commit
f2ca9c1d05
|
@ -2355,15 +2355,10 @@ namespace OpenSim.Region.ClientStack
|
||||||
{
|
{
|
||||||
lock (m_needAck)
|
lock (m_needAck)
|
||||||
{
|
{
|
||||||
foreach (uint ackedPacketId in NewPack.Header.AckList)
|
foreach (uint ack in NewPack.Header.AckList)
|
||||||
{
|
{
|
||||||
Packet ackedPacket;
|
m_unAckedBytes -= m_needAck[ack].ToBytes().Length;
|
||||||
|
m_needAck.Remove(ack);
|
||||||
if (m_needAck.TryGetValue(ackedPacketId, out ackedPacket))
|
|
||||||
{
|
|
||||||
m_unAckedBytes -= ackedPacket.ToBytes().Length;
|
|
||||||
m_needAck.Remove(ackedPacketId);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2378,12 +2373,18 @@ namespace OpenSim.Region.ClientStack
|
||||||
{
|
{
|
||||||
foreach (PacketAckPacket.PacketsBlock block in ackPacket.Packets)
|
foreach (PacketAckPacket.PacketsBlock block in ackPacket.Packets)
|
||||||
{
|
{
|
||||||
uint ackedPackId = block.ID;
|
if (m_needAck.ContainsKey(block.ID))
|
||||||
Packet ackedPacket;
|
|
||||||
if (m_needAck.TryGetValue(ackedPackId, out ackedPacket))
|
|
||||||
{
|
{
|
||||||
m_unAckedBytes -= ackedPacket.ToBytes().Length;
|
try
|
||||||
m_needAck.Remove(ackedPackId);
|
{
|
||||||
|
m_unAckedBytes -= m_needAck[block.ID].ToBytes().Length;
|
||||||
|
m_needAck.Remove(block.ID);
|
||||||
|
}
|
||||||
|
catch (System.Collections.Generic.KeyNotFoundException)
|
||||||
|
{
|
||||||
|
// Did another packet come in with the ack already?
|
||||||
|
// apparently so!
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue