chiark / gitweb /
networkd: address_acquire use cleanup macro
authorSusant Sahani <susant@redhat.com>
Mon, 30 Jun 2014 05:05:48 +0000 (10:35 +0530)
committerTom Gundersen <teg@jklm.no>
Tue, 1 Jul 2014 08:38:07 +0000 (10:38 +0200)
use cleanup macro for Address na

[tomegun: dropped unneccessary braces]

src/network/networkd-address.c

index 9c3e0e3..76febc7 100644 (file)
@@ -231,7 +231,7 @@ int address_update(Address *address, Link *link,
 static int address_acquire(Link *link, Address *original, Address **ret) {
         union in_addr_union in_addr = {};
         struct in_addr broadcast = {};
-        Address *na = NULL;
+        _cleanup_address_free_ Address *na = NULL;
         int r;
 
         assert(link);
@@ -274,11 +274,8 @@ static int address_acquire(Link *link, Address *original, Address **ret) {
 
         if (original->label) {
                 na->label = strdup(original->label);
-
-                if (!na->label) {
-                        free(na);
+                if (!na->label)
                         return -ENOMEM;
-                }
         }
 
         na->broadcast = broadcast;
@@ -287,6 +284,8 @@ static int address_acquire(Link *link, Address *original, Address **ret) {
         LIST_PREPEND(addresses, link->pool_addresses, na);
 
         *ret = na;
+        na = NULL;
+
         return 0;
 }