In both parse_response and query_timeout there exists logic that checks
to ensure that both an A and AAAA lookups have either been responded to
or timed out before processing and returning results to the caller. In
query_timeout, there was a typo in the condition check such that it did
not match those conditions tested in parse_response.
g_queue_remove(resolv->query_queue, query);
- if (lookup->ipv4_query == NULL && lookup->ipv4_query == NULL)
+ if (lookup->ipv4_query == NULL && lookup->ipv6_query == NULL)
sort_and_return_results(lookup);
destroy_query(query);