]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
import: small memory management simplification
authorLennart Poettering <lennart@poettering.net>
Fri, 15 Jan 2021 20:23:20 +0000 (21:23 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 19 Jan 2021 17:29:59 +0000 (18:29 +0100)
src/import/pull-job.c

index b5fb0193ec1611657aa725f79bcea70b27219004..f41a7e7a5d06aa11ad60414c82748c2a87ad039f 100644 (file)
@@ -434,10 +434,9 @@ fail:
 }
 
 static size_t pull_job_header_callback(void *contents, size_t size, size_t nmemb, void *userdata) {
+        _cleanup_free_ char *length = NULL, *last_modified = NULL, *etag = NULL;
         PullJob *j = userdata;
         size_t sz = size * nmemb;
-        _cleanup_free_ char *length = NULL, *last_modified = NULL;
-        char *etag;
         int r;
 
         assert(contents);
@@ -456,8 +455,7 @@ static size_t pull_job_header_callback(void *contents, size_t size, size_t nmemb
                 goto fail;
         }
         if (r > 0) {
-                free(j->etag);
-                j->etag = etag;
+                free_and_replace(j->etag, etag);
 
                 if (strv_contains(j->old_etags, j->etag)) {
                         log_info("Image already downloaded. Skipping download.");