From: Mathieu Tortuyaux Date: Tue, 29 Aug 2023 11:42:16 +0000 (+0200) Subject: sysext: fix `--root=` support X-Git-Tag: v255-rc1~619^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=14361f6dd9ee37bd96170f3d21d65f8758e6b5aa;p=thirdparty%2Fsystemd.git sysext: fix `--root=` support when provided `--root=` was failing for `status`: ``` $ systemd-sysext --root=/mnt status Failed to open '/usr/.systemd-sysext/extensions': No such file or directory ``` path was not relative to the given `--root` - same goes for the `need_reload` as it was inspired from the `verb_status` section. Signed-off-by: Mathieu Tortuyaux --- diff --git a/src/sysext/sysext.c b/src/sysext/sysext.c index fbb6bcdc83c..e7e2478d1e3 100644 --- a/src/sysext/sysext.c +++ b/src/sysext/sysext.c @@ -180,7 +180,7 @@ static int need_reload(void) { if (!r) continue; - f = path_join(*p, image_class_info[arg_image_class].dot_directory_name, image_class_info[arg_image_class].short_identifier_plural); + f = path_join(resolved, image_class_info[arg_image_class].dot_directory_name, image_class_info[arg_image_class].short_identifier_plural); if (!f) return log_oom(); @@ -348,7 +348,7 @@ static int verb_status(int argc, char **argv, void *userdata) { continue; } - f = path_join(*p, image_class_info[arg_image_class].dot_directory_name, image_class_info[arg_image_class].short_identifier_plural); + f = path_join(resolved, image_class_info[arg_image_class].dot_directory_name, image_class_info[arg_image_class].short_identifier_plural); if (!f) return log_oom();