]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
dissect: Fix segmentation fault if loop device is not provided
authorDaanDeMeyer <daan.j.demeyer@gmail.com>
Fri, 26 Dec 2025 21:36:21 +0000 (22:36 +0100)
committerLuca Boccassi <luca.boccassi@gmail.com>
Fri, 27 Feb 2026 20:05:57 +0000 (20:05 +0000)
(cherry picked from commit a0a4e9d7d22296b856a9f6118eb158cab9826a8d)
(cherry picked from commit 1d7fc509703c71f831737b64ac69089b053c829c)
(cherry picked from commit 0bb28ccb127d6b5f0973d80845a7a17b0cc18694)

src/dissect/dissect.c

index 78a830d574b2c30fbc3589ce83c768954ba8e7a6..9e61d4d750053b2509068343404e4b84a7c562a3 100644 (file)
@@ -1793,7 +1793,7 @@ static int action_with(DissectedImage *m, LoopDevice *d) {
                         _exit(EXIT_FAILURE);
                 }
 
-                if (setenv("SYSTEMD_DISSECT_DEVICE", d->node, /* overwrite= */ true) < 0) {
+                if (d && setenv("SYSTEMD_DISSECT_DEVICE", d->node, /* overwrite= */ true) < 0) {
                         log_error_errno(errno, "Failed to set $SYSTEMD_DISSECT_DEVICE: %m");
                         _exit(EXIT_FAILURE);
                 }