From eaa680c09e5701a62e8ac819211e5969eda84f2d Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 2 Oct 2018 13:34:05 +0200 Subject: [PATCH] fileio: fix error propagation in link_tmpfile() --- src/basic/fileio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/basic/fileio.c b/src/basic/fileio.c index ea607f8..d2fd4c4 100644 --- a/src/basic/fileio.c +++ b/src/basic/fileio.c @@ -1492,6 +1492,7 @@ int open_serialization_fd(const char *ident) { } int link_tmpfile(int fd, const char *path, const char *target) { + int r; assert(fd >= 0); assert(target); @@ -1504,8 +1505,9 @@ int link_tmpfile(int fd, const char *path, const char *target) { * operation currently (renameat2() does), and there is no nice way to emulate this. */ if (path) { - if (rename_noreplace(AT_FDCWD, path, AT_FDCWD, target) < 0) - return -errno; + r = rename_noreplace(AT_FDCWD, path, AT_FDCWD, target); + if (r < 0) + return r; } else { char proc_fd_path[STRLEN("/proc/self/fd/") + DECIMAL_STR_MAX(fd) + 1]; -- 2.7.4