tree cf84f27d7de17e941b8c1bd60b428389201aa712
parent 1b7bf4edca0fdbad70c44e139f4cfebd6759de81
author Wending Weng <wweng@rheinmetall.ca> 1251144317 -0400
committer Marcel Holtmann <marcel@holtmann.org> 1251145952 -0700

Bluetooth: Fix false errors from bcsp_pkt_cull function

The error message "Removed only %u out of %u pkts" is printed when multiple
to be acked packets are queued.

    if (i++ >= pkts_to_be_removed)
            break;

This will break out of the loop and increase the counter i when
i==pkts_to_be_removed and the loop ends up with i=pkts_to_be_removed+1.

The following line

    if (i != pkts_to_be_removed) {
            BT_ERR("Removed only %u out of %u pkts", i, pkts_to_be_removed);
    }

will then display the false message.

The counter i must not increase on the same statement.

Signed-off-by: Wending Weng <wweng@rheinmetall.ca>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
