From 4423d63a9634e62cb41d1b1b53cf360edd927f98 Mon Sep 17 00:00:00 2001 From: wangyouwan Date: Tue, 10 May 2022 09:27:35 +0800 Subject: [PATCH] device: Fix pairing has failed due to the error of Already Paired (0x13) After connect the Bluetooth mouse, open two Bluetoothctl at the same time, when remove the mouse, quickly go to power off, try to paired the mouse again when I was power on, found that the error 0x13 was always reported. try to connect directly,can connect successfully. but use the info command to query the information of the mouse and find that the pairing status of the mouse is No. so I try to delete the paired information in the kernel through the "* cancel_pairing()" interface. --- src/device.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/device.c b/src/device.c index 7114e1b3e..b0309a1e7 100644 --- a/src/device.c +++ b/src/device.c @@ -3107,8 +3107,11 @@ static DBusMessage *cancel_pairing(DBusConnection *conn, DBusMessage *msg, DBG(""); - if (!req) + if (!req) { + btd_adapter_remove_bonding(device->adapter, &device->bdaddr, + device->bdaddr_type); return btd_error_does_not_exist(msg); + } device_cancel_bonding(device, MGMT_STATUS_CANCELLED); -- 2.47.3