diff options
author | Claudio Takahasi <claudio.takahasi@openbossa.org> | 2006-04-10 17:28:47 +0000 |
---|---|---|
committer | Claudio Takahasi <claudio.takahasi@openbossa.org> | 2006-04-10 17:28:47 +0000 |
commit | 1f98ca9b57ecd36d032449972b7b9f006ad1e06f (patch) | |
tree | 93902fb3eb844f7cc70107f78423b294ec9ed9cf /hcid/dbus-adapter.c | |
parent | 99ab0e609a4590d0027ae42d95ed1ca0b6c2e86f (diff) |
Fixed discoverable timeout and timeout list data memory leak
Diffstat (limited to 'hcid/dbus-adapter.c')
-rw-r--r-- | hcid/dbus-adapter.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/hcid/dbus-adapter.c b/hcid/dbus-adapter.c index 3de4b9b1..ecfe0198 100644 --- a/hcid/dbus-adapter.c +++ b/hcid/dbus-adapter.c @@ -386,6 +386,14 @@ static DBusHandlerResult handle_dev_set_discoverable_to_req(DBusConnection *conn return error_invalid_arguments(conn, msg); } + if (dbus_data->timeout_id) { + g_timeout_remove(dbus_data->timeout_id); + dbus_data->timeout_id = 0; + } + + if ((timeout != 0) && (dbus_data->mode & SCAN_INQUIRY)) + dbus_data->timeout_id = g_timeout_add(timeout, discoverable_timeout_handler, dbus_data); + dbus_data->discoverable_timeout = timeout; reply = dbus_message_new_method_return(msg); |