diff options
author | Alok Barsode <alok.barsode@azingo.com> | 2008-09-03 12:49:04 +0530 |
---|---|---|
committer | Alok Barsode <alok.barsode@azingo.com> | 2008-09-03 12:49:04 +0530 |
commit | 26c84ba158a898984d8678f6493a7d3b00717198 (patch) | |
tree | b8875bd79495174f904f8c1a47c17b52bdc3f768 | |
parent | c2193535f413360a45dbcdd017f13755367f2599 (diff) |
Adding adapter_remove_active_conn.
-rw-r--r-- | src/adapter.c | 10 | ||||
-rw-r--r-- | src/adapter.h | 2 | ||||
-rw-r--r-- | src/dbus-hci.c | 3 |
3 files changed, 13 insertions, 2 deletions
diff --git a/src/adapter.c b/src/adapter.c index dd5a6762..b58ba49a 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -2918,6 +2918,16 @@ void adapter_add_active_conn(struct adapter *adapter, bdaddr_t *bdaddr, adapter->active_conn = g_slist_append(adapter->active_conn, dev); } +void adapter_remove_active_conn(struct adapter *adapter, + struct active_conn_info *dev) +{ + if (!adapter || !adapter->active_conn) + return; + + adapter->active_conn = g_slist_remove(adapter->active_conn, dev); + g_free(dev); +} + int btd_register_adapter_driver(struct btd_adapter_driver *driver) { adapter_drivers = g_slist_append(adapter_drivers, driver); diff --git a/src/adapter.h b/src/adapter.h index 9374654e..e0653f2d 100644 --- a/src/adapter.h +++ b/src/adapter.h @@ -177,6 +177,8 @@ void adapter_mode_changed(struct adapter *adapter, uint8_t scan_mode); struct agent *adapter_get_agent(struct adapter *adapter); void adapter_add_active_conn(struct adapter *adapter, bdaddr_t *bdaddr, uint16_t handle); +void adapter_remove_active_conn(struct adapter *adapter, + struct active_conn_info *dev); struct btd_adapter_driver { const char *name; diff --git a/src/dbus-hci.c b/src/dbus-hci.c index 79cb8d30..665cf621 100644 --- a/src/dbus-hci.c +++ b/src/dbus-hci.c @@ -1193,8 +1193,7 @@ void hcid_dbus_disconn_complete(bdaddr_t *local, uint8_t status, adapter->bonding = NULL; } - adapter->active_conn = g_slist_remove(adapter->active_conn, dev); - g_free(dev); + adapter_remove_active_conn(adapter, dev); device = adapter_find_device(adapter, paddr); if (device) { |