summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeiko Schlittermann (HS12-RIPE) <hs@schlittermann.de>2019-04-22 22:20:45 +0200
committerHeiko Schlittermann (HS12-RIPE) <hs@schlittermann.de>2019-04-22 22:20:45 +0200
commitecf14f2aeb1baccb27426d3c2e3b7a0b4f4f2e23 (patch)
treedb1a19f87557c167c919c20848e369464119db1b /src
parent6940b3dfaf59844a1fd881720e9342f12922981a (diff)
Fix missing return value from exim_chown_failure
Diffstat (limited to 'src')
-rw-r--r--src/src/exim.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/src/exim.c b/src/src/exim.c
index 2dbc41162..0184d71e8 100644
--- a/src/src/exim.c
+++ b/src/src/exim.c
@@ -690,6 +690,7 @@ of chown()/fchown(). See src/functions.h for more explanation */
int
exim_chown_failure(int fd, const uschar *name, uid_t owner, gid_t group)
{
+int saved_errno = errno; /* from the preceeding chown call */
#if 1
log_write(0, LOG_MAIN|LOG_PANIC,
__FILE__ ":%d: chown(%s, %d:%d) failed (%s)."
@@ -701,7 +702,6 @@ log_write(0, LOG_MAIN|LOG_PANIC,
See Bug 2391
HS 2019-04-18 */
-int saved_errno = errno; /* from the preceeding chown call */
struct stat buf;
if (0 == (fd < 0 ? stat(name, &buf) : fstat(fd, &buf)))
@@ -711,9 +711,9 @@ if (0 == (fd < 0 ? stat(name, &buf) : fstat(fd, &buf)))
}
else log_write(0, LOG_MAIN|LOG_PANIC, "Stat failed on %s: %s", name, strerror(errno));
+#endif
errno = saved_errno;
return -1;
-#endif
}