]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
tree-wide: use free_and_replace() more
authorDavid Tardon <dtardon@redhat.com>
Wed, 24 May 2023 12:21:04 +0000 (14:21 +0200)
committerDavid Tardon <dtardon@redhat.com>
Wed, 24 May 2023 12:59:07 +0000 (14:59 +0200)
src/basic/string-util.c
src/basic/strv.c
src/coredump/coredump-vacuum.c
src/journal/journald-native.c
src/libsystemd-network/lldp-neighbor.c
src/libsystemd-network/sd-dhcp-lease.c
src/libsystemd/sd-bus/bus-socket.c
src/libsystemd/sd-resolve/sd-resolve.c
src/shared/calendarspec.c

index c74ee67dfec24c7d08eb11051d2b4887d98a493d..d4141968df34c4ad74be14c019f8704004a18926 100644 (file)
@@ -955,8 +955,7 @@ int free_and_strdup(char **p, const char *s) {
         } else
                 t = NULL;
 
-        free(*p);
-        *p = t;
+        free_and_replace(*p, t);
 
         return 1;
 }
index 822dadeeb4a1bcdedbbfa9fc8b94344553c713d5..deadb9909e99b7643a0934043200b7c48cbe596e 100644 (file)
@@ -723,8 +723,7 @@ char** strv_shell_escape(char **l, const char *bad) {
                 if (!v)
                         return NULL;
 
-                free(*s);
-                *s = v;
+                free_and_replace(*s, v);
         }
 
         return l;
index c6e201ecf20badcc432ab6489551bc2040ca5383..7e0c98cb7d45016c01c319d2320789287763d9ab 100644 (file)
@@ -187,8 +187,7 @@ int coredump_vacuum(int exclude_fd, uint64_t keep_free, uint64_t max_use) {
                                         if (!n)
                                                 return log_oom();
 
-                                        free(c->oldest_file);
-                                        c->oldest_file = n;
+                                        free_and_replace(c->oldest_file, n);
                                         c->oldest_mtime = t;
                                 }
 
index ca23508454fd1f9ea86dee9680c6644e943756b1..4888c38fdb012971d9c3a1ec5e7e14bb404e71e3 100644 (file)
@@ -66,20 +66,16 @@ static void server_process_entry_meta(
                 char *t;
 
                 t = memdup_suffix0(p + 18, l - 18);
-                if (t) {
-                        free(*identifier);
-                        *identifier = t;
-                }
+                if (t)
+                        free_and_replace(*identifier, t);
 
         } else if (l >= 8 &&
                    startswith(p, "MESSAGE=")) {
                 char *t;
 
                 t = memdup_suffix0(p + 8, l - 8);
-                if (t) {
-                        free(*message);
-                        *message = t;
-                }
+                if (t)
+                        free_and_replace(*message, t);
 
         } else if (l > STRLEN("OBJECT_PID=") &&
                    l < STRLEN("OBJECT_PID=")  + DECIMAL_STR_MAX(pid_t) &&
index 6672409d7533c3027f3af22123646c082e4faa71..af61c9b096bbace2e337408e28ba4601fd0178d7 100644 (file)
@@ -159,8 +159,7 @@ static int parse_string(sd_lldp_rx *lldp_rx, char **s, const void *q, size_t n)
         if (!k)
                 return log_oom_debug();
 
-        free(*s);
-        *s = k;
+        free_and_replace(*s, k);
 
         return 1;
 }
index 02c6a6e0d79133e90eb65c5c7dd65563e87bc981..b0a36324121835569471dd6cc35518d3ef92702a 100644 (file)
@@ -451,8 +451,7 @@ static int lease_parse_in_addrs(const uint8_t *option, size_t len, struct in_add
                 if (!addresses)
                         return -ENOMEM;
 
-                free(*ret);
-                *ret = addresses;
+                free_and_replace(*ret, addresses);
                 *n_ret = n_addresses;
         }
 
@@ -795,8 +794,7 @@ int dhcp_lease_parse_options(uint8_t code, uint8_t len, const void *option, void
                         if (!p)
                                 return -ENOMEM;
 
-                        free(lease->vendor_specific);
-                        lease->vendor_specific = p;
+                        free_and_replace(lease->vendor_specific, p);
                 }
 
                 lease->vendor_specific_len = len;
@@ -1458,8 +1456,7 @@ int dhcp_lease_set_client_id(sd_dhcp_lease *lease, const void *client_id, size_t
                 if (!p)
                         return -ENOMEM;
 
-                free(lease->client_id);
-                lease->client_id = p;
+                free_and_replace(lease->client_id, p);
                 lease->client_id_len = client_id_len;
         }
 
index 741d54cabdfb624b33ff76199f8e61bd5a756140..e4e19972649a6c792ff6360b22714005c156835e 100644 (file)
@@ -337,8 +337,7 @@ static int bus_socket_auth_write(sd_bus *b, const char *t) {
         b->auth_iovec[0].iov_base = p;
         b->auth_iovec[0].iov_len += l;
 
-        free(b->auth_buffer);
-        b->auth_buffer = p;
+        free_and_replace(b->auth_buffer, p);
         b->auth_index = 0;
         return 0;
 }
@@ -868,8 +867,7 @@ static int bus_socket_inotify_setup(sd_bus *b) {
                         goto fail;
                 }
 
-                free(absolute);
-                absolute = c;
+                free_and_replace(absolute, c);
 
                 max_follow--;
         }
index 841b863024358e7cee22e6922fd78af04331aea3..dcd3547f8b90a2d63c4f3874e1d1302e967bde92 100644 (file)
@@ -1109,8 +1109,7 @@ static void resolve_freeaddrinfo(struct addrinfo *ai) {
 
                 free(ai->ai_addr);
                 free(ai->ai_canonname);
-                free(ai);
-                ai = next;
+                free_and_replace(ai, next);
         }
 }
 
index 86a6d3f6080971b1972c3ed7d622b4d137bc0981..78902dfbda68a7aa175069abf0f56ed4bd59dc94 100644 (file)
@@ -37,8 +37,7 @@ assert_cc(INT_MAX >= USEC_PER_SEC);
 static CalendarComponent* chain_free(CalendarComponent *c) {
         while (c) {
                 CalendarComponent *n = c->next;
-                free(c);
-                c = n;
+                free_and_replace(c, n);
         }
         return NULL;
 }