|
@@ -3109,6 +3109,9 @@ int mgmt_disconnect_failed(struct hci_dev *hdev, bdaddr_t *bdaddr,
|
|
|
struct pending_cmd *cmd;
|
|
|
int err;
|
|
|
|
|
|
+ mgmt_pending_foreach(MGMT_OP_UNPAIR_DEVICE, hdev, unpair_device_rsp,
|
|
|
+ hdev);
|
|
|
+
|
|
|
cmd = mgmt_pending_find(MGMT_OP_DISCONNECT, hdev);
|
|
|
if (!cmd)
|
|
|
return -ENOENT;
|
|
@@ -3121,8 +3124,6 @@ int mgmt_disconnect_failed(struct hci_dev *hdev, bdaddr_t *bdaddr,
|
|
|
|
|
|
mgmt_pending_remove(cmd);
|
|
|
|
|
|
- mgmt_pending_foreach(MGMT_OP_UNPAIR_DEVICE, hdev, unpair_device_rsp,
|
|
|
- hdev);
|
|
|
return err;
|
|
|
}
|
|
|
|