From: Susant Sahani Date: Wed, 22 Feb 2017 05:25:03 +0000 (+0530) Subject: networkd: Do not set config to NULL immediately. X-Git-Tag: v233~46^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fcc48287eb6166b87a80da87d383d013f6dec7e1;p=thirdparty%2Fsystemd.git networkd: Do not set config to NULL immediately. fd45e52 sets n to NULL which leads to crash. fixes: #5418 --- diff --git a/src/network/networkd-address.c b/src/network/networkd-address.c index 9d0311d76f9..e872b36009e 100644 --- a/src/network/networkd-address.c +++ b/src/network/networkd-address.c @@ -85,7 +85,9 @@ int address_new_static(Network *network, const char *filename, unsigned section_ if (filename) { address->section = n; - hashmap_put(network->addresses_by_section, n, address); + n = NULL; + + hashmap_put(network->addresses_by_section, address->section, address); } address->network = network; @@ -94,7 +96,6 @@ int address_new_static(Network *network, const char *filename, unsigned section_ *ret = address; address = NULL; - n = NULL; return 0; } diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c index a8ba293ae8a..570083f1803 100644 --- a/src/network/networkd-route.c +++ b/src/network/networkd-route.c @@ -113,7 +113,7 @@ int route_new_static(Network *network, const char *filename, unsigned section_li route->section = n; n = NULL; - r = hashmap_put(network->routes_by_section, n, route); + r = hashmap_put(network->routes_by_section, route->section, route); if (r < 0) return r; }