]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/shared/path-lookup.c
path-lookup: add flag to optionally force checking split-usr unit dirs
[thirdparty/systemd.git] / src / shared / path-lookup.c
index 9919b2f2c2869efd72d86701e3385c6fdf39b58d..e71af2f7cb707f544c6bfe37dc5afd35787035a3 100644 (file)
@@ -263,10 +263,8 @@ static int acquire_generator_dirs(
 
         if (tempdir)
                 prefix = tempdir;
-
         else if (scope == UNIT_FILE_SYSTEM)
                 prefix = "/run/systemd";
-
         else if (scope == UNIT_FILE_USER) {
                 const char *e;
 
@@ -484,6 +482,10 @@ int lookup_paths_init(
         assert(scope >= 0);
         assert(scope < _UNIT_FILE_SCOPE_MAX);
 
+#if HAVE_SPLIT_USR
+        flags |= LOOKUP_PATHS_SPLIT_USR;
+#endif
+
         if (!empty_or_root(root_dir)) {
                 if (scope == UNIT_FILE_USER)
                         return -EINVAL;
@@ -582,9 +584,7 @@ int lookup_paths_init(
                                         "/usr/local/lib/systemd/system",
                                         SYSTEM_DATA_UNIT_PATH,
                                         "/usr/lib/systemd/system",
-#if HAVE_SPLIT_USR
-                                        "/lib/systemd/system",
-#endif
+                                        STRV_IFNOTNULL(flags & LOOKUP_PATHS_SPLIT_USR ? "/lib/systemd/system" : NULL),
                                         STRV_IFNOTNULL(generator_late),
                                         NULL);
                         break;