]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
basic/time-util: use _cleanup_ in one more place 19514/head
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 4 May 2021 17:10:15 +0000 (19:10 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 5 May 2021 13:08:48 +0000 (15:08 +0200)
src/basic/time-util.c

index 78d0390a00cb56bbc65ab9ac17229386b0a00386..6b3b42254d504c55f03d04fe766c9ffb12e4e8c6 100644 (file)
@@ -1278,8 +1278,8 @@ int get_timezones(char ***ret) {
         f = fopen("/usr/share/zoneinfo/zone1970.tab", "re");
         if (f) {
                 for (;;) {
-                        _cleanup_free_ char *line = NULL;
-                        char *p, *w;
+                        _cleanup_free_ char *line = NULL, *w = NULL;
+                        char *p;
                         size_t k;
 
                         r = read_line(f, LONG_LINE_MAX, &line);
@@ -1310,12 +1310,10 @@ int get_timezones(char ***ret) {
                         if (!w)
                                 return -ENOMEM;
 
-                        if (!GREEDY_REALLOC(zones, n_allocated, n_zones + 2)) {
-                                free(w);
+                        if (!GREEDY_REALLOC(zones, n_allocated, n_zones + 2))
                                 return -ENOMEM;
-                        }
 
-                        zones[n_zones++] = w;
+                        zones[n_zones++] = TAKE_PTR(w);
                         zones[n_zones] = NULL;
                 }