summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuiz Augusto von Dentz <luiz.dentz@openbossa.org>2009-03-20 18:27:08 -0300
committerJohan Hedberg <johan.hedberg@nokia.com>2009-03-21 00:08:15 +0200
commitdd9a0283301480d082ae3e3566ef6aec300fec3f (patch)
treeeb5baa948e95ddde2a170a43e3b3b149cea46a8a
parentc9947240b9e784d0f37ca2357bb8099b2e59ee0b (diff)
Prevent duplicated adapter from being registered.
-rw-r--r--src/manager.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/manager.c b/src/manager.c
index e77f2fd0..8b42019f 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -471,8 +471,15 @@ static void manager_add_adapter(struct btd_adapter *adapter)
int manager_register_adapter(int id, gboolean devup)
{
- struct btd_adapter *adapter = adapter_create(connection, id, devup);
+ struct btd_adapter *adapter;
+
+ adapter = manager_find_adapter_by_id(id);
+ if (adapter) {
+ error("Unable to register adapter: hci%d already exist", id);
+ return -1;
+ }
+ adapter = adapter_create(connection, id, devup);
if (!adapter)
return -1;