Diff between 5da7617e7fbd5dd1b3e6f443ab470dda9a26affa and e8353af3275ff6a04b62a1fb958625352b673128

Changed Files

File Additions Deletions Status
src/device.c +14 -0 modified

Full Patch

diff --git a/src/device.c b/src/device.c
index 88a7b86..0ec23a1 100644
--- a/src/device.c
+++ b/src/device.c
@@ -3793,6 +3793,20 @@ void device_bonding_complete(struct btd_device *device, uint8_t status)
 
 	device_set_paired(device, TRUE);
 
+	/* If services are already resolved just reply to the pairing
+	 * request
+	 */
+	if (device->svc_resolved && bonding) {
+		DBusMessage *reply;
+
+		reply = dbus_message_new_method_return(bonding->msg);
+		g_dbus_send_message(dbus_conn, reply);
+
+		bonding_request_free(bonding);
+
+		return;
+	}
+
 	/* If we were initiators start service discovery immediately.
 	 * However if the other end was the initator wait a few seconds
 	 * before SDP. This is due to potential IOP issues if the other