Diff between 82f769e0337932e547e715ad3a5f74c8a971e433 and 75cacde961f97d8ba14aa32b23e885cf96169dc4

Changed Files

File Additions Deletions Status
src/device.c +5 -9 modified

Full Patch

diff --git a/src/device.c b/src/device.c
index f0493e0..6c2bbb1 100644
--- a/src/device.c
+++ b/src/device.c
@@ -2861,6 +2861,7 @@ static void search_cb(sdp_list_t *recs, int err, gpointer user_data)
 {
 	struct browse_req *req = user_data;
 	struct btd_device *device = req->device;
+	GSList *primaries;
 	char addr[18];
 
 	ba2str(&device->bdaddr, addr);
@@ -2885,16 +2886,11 @@ static void search_cb(sdp_list_t *recs, int err, gpointer user_data)
 		goto send_reply;
 	}
 
-	/* Probe matching profiles for services added */
-	if (req->profiles_added) {
-		GSList *list;
+	primaries = device_services_from_record(device, req->profiles_added);
+	if (primaries)
+		device_register_primaries(device, primaries, ATT_PSM);
 
-		list = device_services_from_record(device, req->profiles_added);
-		if (list)
-			device_register_primaries(device, list, ATT_PSM);
-
-		device_probe_profiles(device, req->profiles_added);
-	}
+	device_probe_profiles(device, req->profiles_added);
 
 	/* Propagate services changes */
 	g_dbus_emit_property_changed(dbus_conn, req->device->path,