From f7767d76bb8598c31deb1c0122a7b17947b5df4f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Wed, 2 Jan 2019 13:12:18 +0100 Subject: [PATCH] Introduce CONF_PATHS_USR_STRV to mirror CONF_PATHS_STRV --- src/basic/def.h | 20 ++++++++++++++------ src/shared/install.c | 23 +++++------------------ 2 files changed, 19 insertions(+), 24 deletions(-) diff --git a/src/basic/def.h b/src/basic/def.h index 5be018d82e4..929da726ae5 100644 --- a/src/basic/def.h +++ b/src/basic/def.h @@ -66,12 +66,20 @@ "/usr/lib/" n "\0" \ _CONF_PATHS_SPLIT_USR_NULSTR(n) +#define CONF_PATHS_USR(n) \ + "/etc/" n, \ + "/run/" n, \ + "/usr/local/lib/" n, \ + "/usr/lib/" n + +#define CONF_PATHS(n) \ + CONF_PATHS_USR(n) \ + _CONF_PATHS_SPLIT_USR(n) + +#define CONF_PATHS_USR_STRV(n) \ + STRV_MAKE(CONF_PATHS_USR(n)) + #define CONF_PATHS_STRV(n) \ - STRV_MAKE( \ - "/etc/" n, \ - "/run/" n, \ - "/usr/local/lib/" n, \ - "/usr/lib/" n \ - _CONF_PATHS_SPLIT_USR(n)) + STRV_MAKE(CONF_PATHS(n)) #define HIGH_RLIMIT_MEMLOCK (1024ULL*1024ULL*64ULL) diff --git a/src/shared/install.c b/src/shared/install.c index 5a1fff47c4f..9e88ac46bd5 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -15,6 +15,7 @@ #include "alloc-util.h" #include "conf-files.h" #include "conf-parser.h" +#include "def.h" #include "dirent-util.h" #include "extract-word.h" #include "fd-util.h" @@ -2821,40 +2822,26 @@ static int split_pattern_into_name_and_instances(const char *pattern, char **out } static int presets_find_config(UnitFileScope scope, const char *root_dir, char ***files) { - int r; + const char* const* dirs; assert(scope >= 0); assert(scope < _UNIT_FILE_SCOPE_MAX); - assert(files); switch (scope) { case UNIT_FILE_SYSTEM: - r = conf_files_list(files, ".preset", root_dir, 0, - "/etc/systemd/system-preset", - "/run/systemd/system-preset", - "/usr/local/lib/systemd/system-preset", - "/usr/lib/systemd/system-preset", -#if HAVE_SPLIT_USR - "/lib/systemd/system-preset", -#endif - NULL); + dirs = (const char* const*) CONF_PATHS_STRV("systemd/system-preset"); break; case UNIT_FILE_GLOBAL: case UNIT_FILE_USER: - r = conf_files_list(files, ".preset", root_dir, 0, - "/etc/systemd/user-preset", - "/run/systemd/user-preset", - "/usr/local/lib/systemd/user-preset", - "/usr/lib/systemd/user-preset", - NULL); + dirs = (const char* const*) CONF_PATHS_USR_STRV("systemd/user-preset"); break; default: assert_not_reached("Invalid unit file scope"); } - return r; + return conf_files_list_strv(files, ".preset", root_dir, 0, dirs); } static int read_presets(UnitFileScope scope, const char *root_dir, Presets *presets) { -- 2.47.3