From 9f0fc7962603344d071f5f34caf9e4efb8707940 Mon Sep 17 00:00:00 2001 From: Jukka Rissanen Date: Thu, 11 Oct 2012 13:45:41 +0300 Subject: 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 --- gweb/gresolv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gweb') 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; } -- cgit v1.2.3