remove from use the UpdatesResend on resending udp packets. Just resend

the UDP packet. Also just loose packets we tried to send 6 times already
(ll says 3) A viewer may just beeing ignoring them, or then the link is just dead.
This commit is contained in:
UbitUmarov
2014-08-20 18:55:06 +01:00
parent 16cf3967b4
commit 542118adf1
2 changed files with 54 additions and 36 deletions

View File

@@ -1207,6 +1207,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP
//m_log.DebugFormat("[LLUDPSERVER]: Resending packet #{0} (attempt {1}), {2}ms have passed",
// outgoingPacket.SequenceNumber, outgoingPacket.ResendCount, Environment.TickCount - outgoingPacket.TickCount);
// Bump up the resend count on this packet
Interlocked.Increment(ref outgoingPacket.ResendCount);
// loose packets we retried more than 6 times
// sl says 3 so lets be more tolerant
// we can't not keep hammering with packets a viewer may just beeing ignoring
if (outgoingPacket.ResendCount > 6)
return;
// Set the resent flag
outgoingPacket.Buffer.Data[0] = (byte)(outgoingPacket.Buffer.Data[0] | Helpers.MSG_RESENT);
outgoingPacket.Category = ThrottleOutPacketType.Resend;