From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx> On accept the profile shall check about existing attribute, etc and once done call btd_service_connecting_complete updating the service state properly. --- profiles/scanparam/scan.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/profiles/scanparam/scan.c b/profiles/scanparam/scan.c index d3ca762..d12e09e 100644 --- a/profiles/scanparam/scan.c +++ b/profiles/scanparam/scan.c @@ -201,7 +201,6 @@ static int scan_param_accept(struct btd_service *service) gatt_db_unref(scan->db); bt_gatt_client_unref(scan->client); - scan->db = gatt_db_ref(db); scan->client = bt_gatt_client_ref(client); @@ -209,6 +208,17 @@ static int scan_param_accept(struct btd_service *service) gatt_db_foreach_service(db, &scan_parameters_uuid, foreach_scan_param_service, scan); + if (!scan->attr) { + error("Scan Parameters attribute not found"); + gatt_db_unref(scan->db); + scan->db = NULL; + bt_gatt_client_unref(scan->client); + scan->client = NULL; + return -1; + } + + btd_service_connecting_complete(service, 0); + return 0; } -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html