|
@@ -4112,8 +4112,10 @@ void hci_req_cmd_complete(struct hci_dev *hdev, u16 opcode, u8 status,
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
- *req_complete = bt_cb(skb)->hci.req_complete;
|
|
|
|
- *req_complete_skb = bt_cb(skb)->hci.req_complete_skb;
|
|
|
|
|
|
+ if (bt_cb(skb)->hci.req_flags & HCI_REQ_SKB)
|
|
|
|
+ *req_complete_skb = bt_cb(skb)->hci.req_complete_skb;
|
|
|
|
+ else
|
|
|
|
+ *req_complete = bt_cb(skb)->hci.req_complete;
|
|
kfree_skb(skb);
|
|
kfree_skb(skb);
|
|
}
|
|
}
|
|
spin_unlock_irqrestore(&hdev->cmd_q.lock, flags);
|
|
spin_unlock_irqrestore(&hdev->cmd_q.lock, flags);
|