From: Yu Watanabe Date: Mon, 12 Nov 2018 06:33:18 +0000 (+0900) Subject: network: use hashmap_steal_first() rather than hashmap_first()+hashmap_remove() X-Git-Tag: v240~351^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f61365e516851e8f59a6d120d29835c111c1d8fb;p=thirdparty%2Fsystemd.git network: use hashmap_steal_first() rather than hashmap_first()+hashmap_remove() --- diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c index fce8f4610c9..fe481f1c025 100644 --- a/src/network/networkd-manager.c +++ b/src/network/networkd-manager.c @@ -1417,13 +1417,9 @@ void manager_free(Manager *m) { manager_dhcp6_prefix_remove_all(m, link); hashmap_free(m->dhcp6_prefixes); - while ((link = hashmap_first(m->links))) { + while ((link = hashmap_steal_first(m->links))) { if (link->dhcp6_client) - (void) dhcp6_lease_pd_prefix_lost(link->dhcp6_client, - link); - - hashmap_remove(m->links, INT_TO_PTR(link->ifindex)); - + (void) dhcp6_lease_pd_prefix_lost(link->dhcp6_client, link); link_unref(link); }