X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fresolve%2Fresolved-manager.c;h=db346cc0e54ff5abe63c99570eb37a8a6f516ced;hp=5061d39c4630b6ac9f1994adc492e708182eef53;hb=f0e1546763304aedc90e91d70dab9eeb7c966cf8;hpb=edc501d4674dadc304d45a7e1c5b69e207eb8cd4 diff --git a/src/resolve/resolved-manager.c b/src/resolve/resolved-manager.c index 5061d39c4..db346cc0e 100644 --- a/src/resolve/resolved-manager.c +++ b/src/resolve/resolved-manager.c @@ -524,14 +524,11 @@ Manager *manager_free(Manager *m) { if (!m) return NULL; - while (m->dns_queries) - dns_query_free(m->dns_queries); - - hashmap_free(m->dns_transactions); - while ((l = hashmap_first(m->links))) link_free(l); - hashmap_free(m->links); + + while (m->dns_queries) + dns_query_free(m->dns_queries); dns_scope_free(m->unicast_scope); @@ -540,6 +537,9 @@ Manager *manager_free(Manager *m) { while (m->fallback_dns_servers) dns_server_free(m->fallback_dns_servers); + hashmap_free(m->links); + hashmap_free(m->dns_transactions); + sd_event_source_unref(m->network_event_source); sd_network_monitor_unref(m->network_monitor);