From dbd7555190c8b8041a19e37eca6942625af3cee2 Mon Sep 17 00:00:00 2001 From: Mike Yuan Date: Tue, 20 Jan 2026 18:54:25 +0100 Subject: [PATCH] mkdir: reset mtime *after* fchown() Follow-up for 34c3d574742e867ef97e79509e4051a82f1b7d9b Also, drop pointless shortcut. --- src/basic/mkdir.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/basic/mkdir.c b/src/basic/mkdir.c index f670840e3ce..837880baa2e 100644 --- a/src/basic/mkdir.c +++ b/src/basic/mkdir.c @@ -255,8 +255,8 @@ int mkdir_p_root_full(const char *root, const char *p, uid_t uid, gid_t gid, mod if (nfd < 0) return nfd; - if (ts == USEC_INFINITY && !uid_is_valid(uid) && !gid_is_valid(gid)) - return 1; + if ((uid_is_valid(uid) || gid_is_valid(gid)) && fchown(nfd, uid, gid) < 0) + return -errno; if (ts != USEC_INFINITY) { struct timespec tspec; @@ -269,8 +269,5 @@ int mkdir_p_root_full(const char *root, const char *p, uid_t uid, gid_t gid, mod return -errno; } - if ((uid_is_valid(uid) || gid_is_valid(gid)) && fchown(nfd, uid, gid) < 0) - return -errno; - return 1; } -- 2.47.3