summaryrefslogtreecommitdiffstats
path: root/src/manager.c
diff options
context:
space:
mode:
authorLuiz Augusto von Dentz <luiz.dentz@indt.org.br>2008-07-30 18:02:48 -0300
committerLuiz Augusto von Dentz <luiz.dentz@indt.org.br>2008-07-30 18:02:48 -0300
commit9b4bfa74d25e360932402994a32305bf2145eb34 (patch)
tree4d6da404e60941b2aa83ab4a99258537b41998e1 /src/manager.c
parentd0c561820ca05cafc8a7d20e3250953b48aa5214 (diff)
Fix adapter removal.
Diffstat (limited to 'src/manager.c')
-rw-r--r--src/manager.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/src/manager.c b/src/manager.c
index 4f638566..cda45f4c 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -442,20 +442,14 @@ static void manager_remove_adapter(struct adapter *adapter)
int manager_register_adapter(int id)
{
- struct adapter *adapter = adapter_create(id);
+ struct adapter *adapter = adapter_create(connection, id);
const gchar *path;
- if(!adapter)
+ if (!adapter)
return -1;
path = adapter_get_path(adapter);
- if (!adapter_init(connection, path, adapter)) {
- error("Adapter interface init failed on path %s", path);
- adapter_free(adapter);
- return -1;
- }
-
__probe_servers(path);
manager_add_adapter(adapter);
@@ -482,13 +476,7 @@ int manager_unregister_adapter(int id)
manager_remove_adapter(adapter);
- if (!adapter_cleanup(connection, path)) {
- error("Failed to unregister adapter interface on %s object",
- path);
- return -1;
- }
-
- adapter_free(adapter);
+ adapter_remove(adapter);
return 0;
}