gresolv: Remove query from queue before destroying the query
authorJukka Rissanen <jukka.rissanen@linux.intel.com>
Thu, 18 Oct 2012 11:35:18 +0000 (14:35 +0300)
committerPatrik Flykt <patrik.flykt@linux.intel.com>
Fri, 19 Oct 2012 07:26:27 +0000 (10:26 +0300)
The order of actions is important here.

gweb/gresolv.c

index cf7f2e9..d30e2f1 100644 (file)
@@ -1052,9 +1052,9 @@ guint g_resolv_lookup_hostname(GResolv *resolv, const char *hostname,
        if (resolv->result_family != AF_INET) {
                if (add_query(lookup, hostname, ns_t_aaaa)) {
                        if (resolv->result_family != AF_INET6) {
-                               destroy_query(lookup->ipv4_query);
                                g_queue_remove(resolv->query_queue,
                                                lookup->ipv4_query);
+                               destroy_query(lookup->ipv4_query);
                        }
 
                        g_free(lookup);