diff options
author | Jukka Rissanen <jukka.rissanen@linux.intel.com> | 2012-10-11 13:45:41 +0300 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2012-10-12 13:14:11 +0300 |
commit | 9f0fc7962603344d071f5f34caf9e4efb8707940 (patch) | |
tree | f1ee011cd98268637c63725dba1da991744b11c2 /gweb/gresolv.c | |
parent | 3f13d897e88d61f2e98ca4b9dff51336e4a4900b (diff) | |
download | connman-9f0fc7962603344d071f5f34caf9e4efb8707940.tar.gz connman-9f0fc7962603344d071f5f34caf9e4efb8707940.tar.bz2 connman-9f0fc7962603344d071f5f34caf9e4efb8707940.zip |
gresolv: Remove lookup from correct queue
The lookup must be removed from lookup queue and not from query
queue when cancelling the lookup. Otherwise it is possible that
we might access an already removed lookup that is still found in
lookup queue.
Fixes BMC#25728
Diffstat (limited to 'gweb/gresolv.c')
-rw-r--r-- | gweb/gresolv.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gweb/gresolv.c b/gweb/gresolv.c index 79abc9b7..77c1afb8 100644 --- a/gweb/gresolv.c +++ b/gweb/gresolv.c @@ -1043,8 +1043,8 @@ gboolean g_resolv_cancel_lookup(GResolv *resolv, guint id) if (list == NULL) return FALSE; + g_queue_remove(resolv->lookup_queue, list->data); destroy_lookup(list->data); - g_queue_remove(resolv->query_queue, list->data); return TRUE; } |