void Netchan_Clear(netchan_t *chan) { Netchan_ClearFragments(chan); if (chan->reliable_length) { Con_DPrintf("%s: reliable length not 0, reliable_sequence: %d, incoming_reliable_acknowledged: %d\n", __func__, chan->reliable_length, chan->incoming_reliable_acknowledged); chan->reliable_sequence ^= 1; chan->reliable_length = 0; } chan->cleartime = 0.0; for (int i = 0; i < MAX_STREAMS; i++) { chan->reliable_fragid[i] = 0; chan->reliable_fragment[i] = 0; chan->fragbufcount[i] = 0; chan->frag_startpos[i] = 0; chan->frag_length[i] = 0; chan->incomingready[i] = FALSE; } if (chan->tempbuffer) { Mem_Free(chan->tempbuffer); chan->tempbuffer = nullptr; } chan->tempbuffersize = 0; }
/* ============================== Netchan_Clear ============================== */ void Netchan_Clear( netchan_t *chan ) { int i; Netchan_ClearFragments( chan ); chan->cleartime = 0.0; chan->reliable_length = 0; for( i = 0; i < MAX_STREAMS; i++ ) { chan->reliable_fragid[i] = 0; chan->reliable_fragment[i] = 0; chan->fragbufcount[i] = 0; chan->frag_startpos[i] = 0; chan->frag_length[i] = 0; chan->incomingready[i] = false; } Q_memset( chan->flow, 0, sizeof( chan->flow )); }