From 3d6f441673de51cdd419cd2fd74f4e22f47b0617 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Tue, 4 May 2010 16:24:53 +0200 Subject: fork_execv_on_steroids: close other end of the pipe in the child Signed-off-by: Denys Vlasenko --- lib/Utils/spawn.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib/Utils/spawn.cpp') diff --git a/lib/Utils/spawn.cpp b/lib/Utils/spawn.cpp index 54d08a4a..43bc9540 100644 --- a/lib/Utils/spawn.cpp +++ b/lib/Utils/spawn.cpp @@ -67,11 +67,13 @@ pid_t fork_execv_on_steroids(int flags, /* Play with stdio descriptors */ if (flags & EXECFLG_INPUT) { xmove_fd(pipe_to_child[0], STDIN_FILENO); + close(pipe_to_child[1]); } else if (flags & EXECFLG_INPUT_NUL) { xmove_fd(xopen("/dev/null", O_RDWR), STDIN_FILENO); } if (flags & EXECFLG_OUTPUT) { xmove_fd(pipe_fm_child[1], STDOUT_FILENO); + close(pipe_to_child[0]); } else if (flags & EXECFLG_OUTPUT_NUL) { xmove_fd(xopen("/dev/null", O_RDWR), STDOUT_FILENO); } -- cgit