From: Yu Watanabe Date: Thu, 30 Mar 2023 07:15:19 +0000 (+0900) Subject: chase: add CHASE_AT_RESOLVE_IN_ROOT only when it is necessary X-Git-Tag: v254-rc1~863^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F27063%2Fhead;p=thirdparty%2Fsystemd.git chase: add CHASE_AT_RESOLVE_IN_ROOT only when it is necessary --- diff --git a/src/basic/chase.c b/src/basic/chase.c index 7b7664096f7..00c2f74e927 100644 --- a/src/basic/chase.c +++ b/src/basic/chase.c @@ -539,10 +539,10 @@ int chase( if (fd < 0) return -errno; - flags |= CHASE_AT_RESOLVE_IN_ROOT; - flags &= ~CHASE_PREFIX_ROOT; + if (!empty_or_root(root)) + flags |= CHASE_AT_RESOLVE_IN_ROOT; - r = chaseat(fd, path, flags, ret_path ? &p : NULL, ret_fd ? &pfd : NULL); + r = chaseat(fd, path, flags & ~CHASE_PREFIX_ROOT, ret_path ? &p : NULL, ret_fd ? &pfd : NULL); if (r < 0) return r;