From 580643a47f18db6f3e6cd44b48c10e21ad439839 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Tue, 29 Jul 2025 03:36:36 +0900 Subject: [PATCH] conf-files: CHASE_MUST_BE_DIRECTORY can be set with CHASE_NONEXISTENT With the previous commit, now CHASE_MUST_BE_DIRECTORY can be set with CHASE_NONEXISTENT. Let's unconditionally set the flag to chase the directory part of the conf file. --- src/basic/conf-files.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/basic/conf-files.c b/src/basic/conf-files.c index b1b0c746376..c00325f2e44 100644 --- a/src/basic/conf-files.c +++ b/src/basic/conf-files.c @@ -145,7 +145,9 @@ int conf_file_new_at(const char *path, int rfd, ChaseFlags chase_flags, ConfFile return log_debug_errno(r, "Failed to extract directory from '%s': %m", path); if (r >= 0) { r = chaseat(rfd, dirpath, - CHASE_AT_RESOLVE_IN_ROOT | (FLAGS_SET(chase_flags, CHASE_NONEXISTENT) ? CHASE_NONEXISTENT : CHASE_MUST_BE_DIRECTORY), + CHASE_AT_RESOLVE_IN_ROOT | + CHASE_MUST_BE_DIRECTORY | + (FLAGS_SET(chase_flags, CHASE_NONEXISTENT) ? CHASE_NONEXISTENT : 0), &resolved_dirpath, /* ret_fd = */ NULL); if (r < 0) return log_debug_errno(r, "Failed to chase '%s%s': %m", empty_to_root(root), skip_leading_slash(dirpath)); -- 2.47.3