From 1ef4fbda1b9a9087b967a2ba0fab5db9eb3844db Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 28 Jul 2008 23:26:17 +0200 Subject: create retval pipes once only --- libdaemon/dfork.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/libdaemon/dfork.c b/libdaemon/dfork.c index ff58659..44d815c 100644 --- a/libdaemon/dfork.c +++ b/libdaemon/dfork.c @@ -325,8 +325,14 @@ pid_t daemon_fork(void) { } int daemon_retval_init(void) { - if (pipe(_daemon_retval_pipe) < 0) - return -1; + + if (_daemon_retval_pipe[0] < 0 || _daemon_retval_pipe[1] < 0) { + + if (pipe(_daemon_retval_pipe) < 0) { + daemon_log(LOG_ERR, "pipe(): %s", strerror(errno)); + return -1; + } + } return 0; } -- cgit