Diff between f9c5137dfd279aea7be1552f170b1ed29315874b and 5d044fff918851fbd1296dfc2fd29ce77babd98d

Changed Files

File Additions Deletions Status
android/adapter.c +8 -10 modified
android/adapter.h +2 -2 modified

Full Patch

diff --git a/android/adapter.c b/android/adapter.c
index 88ac19f..160623a 100644
--- a/android/adapter.c
+++ b/android/adapter.c
@@ -277,24 +277,22 @@ failed:
 	adapter->ready(NULL, err);
 }
 
-bool bt_adapter_init(uint16_t index, struct mgmt *mgmt_if,
-						bt_adapter_ready ready)
+void bt_adapter_init(uint16_t index, struct mgmt *mgmt, bt_adapter_ready cb)
 {
 	struct bt_adapter *adapter;
 
 	adapter = g_new0(struct bt_adapter, 1);
 
-	adapter->mgmt = mgmt_ref(mgmt_if);
+	adapter->mgmt = mgmt_ref(mgmt);
 	adapter->index = index;
-	adapter->ready = ready;
+	adapter->ready = cb;
 
-	if (mgmt_send(mgmt_if, MGMT_OP_READ_INFO, index, 0, NULL,
-				read_info_complete, adapter, NULL) > 0) {
-		mgmt_unref(mgmt_if);
-		return false;
-	}
+	if (mgmt_send(mgmt, MGMT_OP_READ_INFO, index, 0, NULL,
+				read_info_complete, adapter, NULL) > 0)
+		return;
 
-	return adapter;
+	mgmt_unref(mgmt);
+	adapter->ready(adapter, -EIO);
 }
 
 static void set_mode_complete(uint8_t status, uint16_t length,
diff --git a/android/adapter.h b/android/adapter.h
index b8d0a58..236f10a 100644
--- a/android/adapter.h
+++ b/android/adapter.h
@@ -32,8 +32,8 @@ struct bt_adapter;
 
 typedef void (*bt_adapter_ready)(struct bt_adapter *adapter, int err);
 
-bool bt_adapter_init(uint16_t index, struct mgmt *mgmt_if,
-						bt_adapter_ready func);
+void bt_adapter_init(uint16_t index, struct mgmt *mgmt_if,
+							bt_adapter_ready cb);
 
 void bt_adapter_handle_cmd(GIOChannel *io, uint8_t opcode, void *buf,
 								uint16_t len);