Bluetooth: Refactor loop in l2cap_retransmit_one_frame

This make it easier to see what is the real reason for loop to exit.
skb_queue_next return valid skb or garbage, not NULL.

Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
This commit is contained in:
Szymon Janc 2011-11-16 09:32:20 +01:00 коммит произвёл Gustavo F. Padovan
Родитель 039d9572f1
Коммит d1726b6dc9
1 изменённых файлов: 3 добавлений и 5 удалений

Просмотреть файл

@ -1318,14 +1318,12 @@ static void l2cap_retransmit_one_frame(struct l2cap_chan *chan, u16 tx_seq)
if (!skb)
return;
do {
if (bt_cb(skb)->tx_seq == tx_seq)
break;
while (bt_cb(skb)->tx_seq != tx_seq) {
if (skb_queue_is_last(&chan->tx_q, skb))
return;
} while ((skb = skb_queue_next(&chan->tx_q, skb)));
skb = skb_queue_next(&chan->tx_q, skb);
}
if (chan->remote_max_tx &&
bt_cb(skb)->retries == chan->remote_max_tx) {