]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: use hashmap_free_with_destructor() in network_free()
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 11 Nov 2018 02:21:13 +0000 (11:21 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 11 Nov 2018 02:36:16 +0000 (11:36 +0900)
src/network/networkd-network.c

index 961fae601026811bff2e89a5fdff6ab9f323e620..b2663ebf1384ba43bd911089091de8273e9cc04b 100644 (file)
@@ -342,9 +342,7 @@ void network_free(Network *network) {
         AddressLabel *label;
         Prefix *prefix;
         Address *address;
-        NetDev *netdev;
         Route *route;
-        Iterator i;
 
         if (!network)
                 return;
@@ -377,11 +375,7 @@ void network_free(Network *network) {
         netdev_unref(network->bond);
         netdev_unref(network->vrf);
 
-        HASHMAP_FOREACH(netdev, network->stacked_netdevs, i) {
-                hashmap_remove(network->stacked_netdevs, netdev->ifname);
-                netdev_unref(netdev);
-        }
-        hashmap_free(network->stacked_netdevs);
+        hashmap_free_with_destructor(network->stacked_netdevs, netdev_unref);
 
         while ((route = network->static_routes))
                 route_free(route);