diff options
author | Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com> | 2013-01-15 14:57:38 +0200 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2013-01-15 16:46:02 +0200 |
commit | 0ac965a7e350612a90d1a31cc03394b7c0a73111 (patch) | |
tree | eb21e3b3657168ede1622cb52ff98d27102b3b1c /src/agent.c | |
parent | c8dd27a205c28d61580c1530d80e510b947e1d2a (diff) | |
download | connman-0ac965a7e350612a90d1a31cc03394b7c0a73111.tar.gz connman-0ac965a7e350612a90d1a31cc03394b7c0a73111.tar.bz2 connman-0ac965a7e350612a90d1a31cc03394b7c0a73111.zip |
agent: Keep track of the driver to unref user context relevantly
Fixes BMC#25884
Diffstat (limited to 'src/agent.c')
-rw-r--r-- | src/agent.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/agent.c b/src/agent.c index 3be4b616..5c3bd28c 100644 --- a/src/agent.c +++ b/src/agent.c @@ -187,9 +187,10 @@ int connman_agent_queue_message(void *user_context, driver = get_driver(); DBG("driver %p", driver); - if (driver != NULL && driver->context_ref != NULL) + if (driver != NULL && driver->context_ref != NULL) { queue_data->user_context = driver->context_ref(user_context); - else + queue_data->driver = driver; + } else queue_data->user_context = user_context; queue_data->msg = dbus_message_ref(msg); |