Quote:
Originally Posted by fathernitwit
Hey wiz,
in this code:
Code:
if (GetState() == EQNC_Active && pack->dwARQ == arsp_response + 10) //This code checks if 10 packets have been sent since last ARSP ("we got this packet yo") response from client, and if so, tags those ten packets that haven't been verifiably recieved for a resend. Should probably be condensed into a function for cleanliness :P
{
LinkedListIterator<EQNetworkPacket*> iterator2(SendQueue);
iterator2.Reset();
while (iterator2.MoreElements())
{
EQNetworkPacket* pack2 = iterator2.GetData();
if (pack2->dwARQ == pack->dwARQ)
break;
iterator2.Advance();
}
}
I imagine that you wanted to set SentCount to 0 so it would be resent.. but you dont, so I imagine packets will never get resent. In fact, this loop does nothing at all.
|
... strange. It most certainly does something in my code, I must have omitted it somehow doesn't in the pasted code. Just throw in a pack2->SentCount = 0 there.