]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
pull-job: optionally free userdata when we destroy a PullJob
authorLennart Poettering <lennart@amutable.com>
Thu, 6 Nov 2025 08:32:56 +0000 (09:32 +0100)
committerLennart Poettering <lennart@amutable.com>
Thu, 19 Feb 2026 14:05:14 +0000 (15:05 +0100)
src/import/pull-job.c
src/import/pull-job.h

index bd4211804249443268a519da784047c7de6f73df..ef1da55af043abec2c4157105e428b12146d384d 100644 (file)
@@ -62,6 +62,9 @@ PullJob* pull_job_unref(PullJob *j) {
         iovec_done(&j->expected_checksum);
         free(j->content_type);
 
+        if (j->free_userdata)
+                j->free_userdata(j->userdata);
+
         return mfree(j);
 }
 
index 41dc5674285541583745e075cbb4a7e056bc9a92..0805184600325326913241545e8828ef7dda1134 100644 (file)
@@ -36,6 +36,8 @@ typedef struct PullJob {
         char *url;
 
         void *userdata;
+        free_func_t free_userdata;
+
         PullJobFinished on_finished;
         PullJobOpenDisk on_open_disk;
         PullJobHeader on_header;