summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2008-12-01 17:42:43 +0100
committerMarcel Holtmann <marcel@holtmann.org>2008-12-01 17:42:43 +0100
commit75648ce6edd38a4ae1cc6e2a7ea4684a018abd89 (patch)
tree23ed68dd394ca4f94db3278ef57505c43dd86afa
parent79ed9e5915c90cccf59016fb7de73b460b85b02c (diff)
parenta537a1998dd27a9ab92f4eaae47fc09f36a83545 (diff)
Merge branch 'for-upstream' of git://gitorious.org/bluez/vudentzs-clone
-rw-r--r--src/manager.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/manager.c b/src/manager.c
index b290852e..ad14e566 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -380,8 +380,7 @@ static void manager_add_adapter(struct btd_adapter *adapter)
if (default_adapter_id < 0) {
int new_default = hci_get_route(NULL);
- if (new_default >= 0)
- manager_set_default_adapter(new_default);
+ manager_set_default_adapter(new_default);
}
}
@@ -398,8 +397,7 @@ static void manager_remove_adapter(struct btd_adapter *adapter)
if (default_adapter_id == dev_id || default_adapter_id < 0) {
int new_default = hci_get_route(NULL);
- if (new_default >= 0)
- manager_set_default_adapter(new_default);
+ manager_set_default_adapter(new_default);
}
adapters = g_slist_remove(adapters, adapter);
@@ -478,11 +476,17 @@ int manager_get_default_adapter()
void manager_set_default_adapter(int id)
{
- struct btd_adapter *adapter = manager_find_adapter_by_id(id);
- const gchar *path = adapter_get_path(adapter);
+ struct btd_adapter *adapter;
+ const gchar *path;
default_adapter_id = id;
+ adapter = manager_find_adapter_by_id(id);
+ if (!adapter)
+ return;
+
+ path = adapter_get_path(adapter);
+
g_dbus_emit_signal(connection, "/",
MANAGER_INTERFACE,
"DefaultAdapterChanged",