From 2f6181ad4d6c126e3ebf6880ba30b3b0059c6fc8 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Fri, 24 Nov 2023 05:22:33 +0900 Subject: [PATCH] analyze: do not prepend the current working directory to SYSTEMD_UNIT_PATH needlessly If the requested unit is not in the current working directory, it is not necessary to include the current working directory in SYSTEMD_UNIT_PATH. Follow-up for 45519d13a4f2a3c3585e672595762ca621abe65e. Fixes #30166. --- src/analyze/analyze-verify-util.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/analyze/analyze-verify-util.c b/src/analyze/analyze-verify-util.c index cfafbd4d44d..f3ce0ad1f17 100644 --- a/src/analyze/analyze-verify-util.c +++ b/src/analyze/analyze-verify-util.c @@ -86,6 +86,9 @@ int verify_set_unit_path(char **filenames) { if (r < 0) return r; + if (access(a, F_OK) < 0) + continue; + r = path_extract_directory(a, &t); if (r < 0) return r; @@ -99,6 +102,9 @@ int verify_set_unit_path(char **filenames) { if (!joined) return -ENOMEM; + if (isempty(joined)) + return 0; + /* First, prepend our directories. Second, if some path was specified, use that, and * otherwise use the defaults. Any duplicates will be filtered out in path-lookup.c. * Treat explicit empty path to mean that nothing should be appended. */ -- 2.47.3