Diff between 126aad3a5d2f53a970473dd2f7915d22fd3db0e4 and 324ba2b35f24c68c4e581b72507c56b62c219ff2

Changed Files

File Additions Deletions Status
android/adapter.c +14 -7 modified

Full Patch

diff --git a/android/adapter.c b/android/adapter.c
index 929e8cb..01b625b 100644
--- a/android/adapter.c
+++ b/android/adapter.c
@@ -66,6 +66,17 @@ struct bt_adapter {
 static struct bt_adapter *adapter;
 static GSList *found_devices = NULL;
 
+static void adapter_set_name(const uint8_t *name)
+{
+	if (!g_strcmp0(adapter->name, (const char *) name))
+		return;
+
+	DBG("Cnage name: %s -> %s", adapter->name, name);
+
+	g_free(adapter->name);
+	adapter->name = g_strdup((const char *) name);
+}
+
 static void mgmt_local_name_changed_event(uint16_t index, uint16_t length,
 					const void *param, void *user_data)
 {
@@ -76,13 +87,7 @@ static void mgmt_local_name_changed_event(uint16_t index, uint16_t length,
 		return;
 	}
 
-	if (!g_strcmp0(adapter->name, (const char *) rp->name))
-		return;
-
-	DBG("name: %s", rp->name);
-
-	g_free(adapter->name);
-	adapter->name = g_strdup((const char *) rp->name);
+	adapter_set_name(rp->name);
 
 	/* TODO Update services if needed */
 }
@@ -879,6 +884,8 @@ static void set_adapter_name_complete(uint8_t status, uint16_t length,
 		return;
 	}
 
+	adapter_set_name(rp->name);
+
 	adapter_name_changed(rp->name);
 }