Bluetooth: Remove double free of SKB pointer in L2CAP

Trivial fix for double free of SKB pointer with kfree_skb to
make code simplier and cleaner. Remove unused variable err.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@nokia.com>
Acked-by: Gustavo F. Padovan <padovan@profusion.mobi>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Andrei Emeltchenko 2009-12-22 15:58:08 +02:00 committed by Marcel Holtmann
parent b473946a08
commit fcafde2e6d
1 changed files with 4 additions and 7 deletions

View File

@ -3518,7 +3518,6 @@ static inline int l2cap_data_channel(struct l2cap_conn *conn, u16 cid, struct sk
struct l2cap_pinfo *pi;
u16 control, len;
u8 tx_seq;
int err;
sk = l2cap_get_chan_by_scid(&conn->chan_list, cid);
if (!sk) {
@ -3570,13 +3569,11 @@ static inline int l2cap_data_channel(struct l2cap_conn *conn, u16 cid, struct sk
goto drop;
if (__is_iframe(control))
err = l2cap_data_channel_iframe(sk, control, skb);
l2cap_data_channel_iframe(sk, control, skb);
else
err = l2cap_data_channel_sframe(sk, control, skb);
l2cap_data_channel_sframe(sk, control, skb);
if (!err)
goto done;
break;
case L2CAP_MODE_STREAMING:
control = get_unaligned_le16(skb->data);
@ -3602,7 +3599,7 @@ static inline int l2cap_data_channel(struct l2cap_conn *conn, u16 cid, struct sk
else
pi->expected_tx_seq = tx_seq + 1;
err = l2cap_sar_reassembly_sdu(sk, skb, control);
l2cap_sar_reassembly_sdu(sk, skb, control);
goto done;