Diff between 1bf0336942fd093a0f8fa890eb026e1dc379f35f and 8b21a74f2e473b88cadc8ad871c635ace969ee02

Changed Files

File Additions Deletions Status
src/adapter.c +4 -2 modified

Full Patch

diff --git a/src/adapter.c b/src/adapter.c
index fc4913e..8a99f52 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -1425,7 +1425,7 @@ static void start_discovery_complete(uint8_t status, uint16_t length,
 					const void *param, void *user_data)
 {
 	struct btd_adapter *adapter = user_data;
-	struct watch_client *client = adapter->discovery_list->data;
+	struct watch_client *client;
 	const struct mgmt_cp_start_discovery *rp = param;
 	DBusMessage *reply;
 
@@ -1434,7 +1434,7 @@ static void start_discovery_complete(uint8_t status, uint16_t length,
 	/* Is there are no clients the discovery must have been stopped while
 	 * discovery command was pending.
 	 */
-	if (!client) {
+	if (!adapter->discovery_list) {
 		struct mgmt_cp_stop_discovery cp;
 
 		if (status != MGMT_STATUS_SUCCESS)
@@ -1448,6 +1448,8 @@ static void start_discovery_complete(uint8_t status, uint16_t length,
 		return;
 	}
 
+	client = adapter->discovery_list->data;
+
 	if (length < sizeof(*rp)) {
 		btd_error(adapter->dev_id,
 			"Wrong size of start discovery return parameters");