On Fri, Dec 23, 2016 at 04:46:50PM +0100, Neels Hofmeyr wrote:
if (!msg) { tbf = NULL;If this is not the last for() iteration, setting tbf = NULL makes no sense, it will be set to next_list[..] at the start of the next iteration.
If this *is* the last iteration, tbf = NULL makes no sense either, because msg is NULL and tbf will be set to dl_ass_tbf or ul_ass_tbf in the if (!msg) {} case below.
Ah, wrong, if both dl_ass_tbf and ul_ass_tbf below are null, this has an effect. Maybe it would make slightly more sense to add "else tbf = NULL" below instead.
continue; } pdch->next_ctrl_prio += 1; pdch->next_ctrl_prio %= 3; break;}
if (!msg) { /* * If one of these is left, the response (CONTROL ACK) from the * MS will kill the current TBF, only one of them can be * non-NULL */ if (dl_ass_tbf) { tbf = dl_ass_tbf; msg = dl_ass_tbf->create_dl_ass(fn, ts); } else if (ul_ass_tbf) { tbf = ul_ass_tbf; msg = ul_ass_tbf->create_ul_ass(fn, ts); } }