summaryrefslogtreecommitdiff
path: root/src/execute.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/execute.c')
-rw-r--r--src/execute.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/execute.c b/src/execute.c
index f35e916e4c..2443d9c74d 100644
--- a/src/execute.c
+++ b/src/execute.c
@@ -1038,6 +1038,11 @@ int exec_spawn(ExecCommand *command,
goto fail;
}
+ /* If a socket is connected to STDIN/STDOUT/STDERR, we
+ * must sure to drop O_NONBLOCK */
+ if (socket_fd >= 0)
+ fd_nonblock(socket_fd, false);
+
if (!keep_stdin)
if (setup_input(context, socket_fd, apply_tty_stdin) < 0) {
r = EXIT_STDIN;