diff options
-rw-r--r-- | shell/hush.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/shell/hush.c b/shell/hush.c index 012ec219f..e6dd1bc3d 100644 --- a/shell/hush.c +++ b/shell/hush.c | |||
@@ -8173,6 +8173,12 @@ static NOINLINE int run_pipe(struct pipe *pi) | |||
8173 | rcode = 1; /* exitcode if redir failed */ | 8173 | rcode = 1; /* exitcode if redir failed */ |
8174 | if (setup_redirects(command, &squirrel) == 0) { | 8174 | if (setup_redirects(command, &squirrel) == 0) { |
8175 | debug_printf_exec(": run_list\n"); | 8175 | debug_printf_exec(": run_list\n"); |
8176 | //FIXME: we need to pass squirrel down into run_list() | ||
8177 | //for SH_STANDALONE case, or else this construct: | ||
8178 | // { find /proc/self/fd; true; } >FILE; cmd2 | ||
8179 | //has no way of closing saved fd#1 for "find", | ||
8180 | //and in SH_STANDALONE mode, "find" is not execed, | ||
8181 | //therefore CLOEXEC on saved fd does not help. | ||
8176 | rcode = run_list(command->group) & 0xff; | 8182 | rcode = run_list(command->group) & 0xff; |
8177 | } | 8183 | } |
8178 | restore_redirects(squirrel); | 8184 | restore_redirects(squirrel); |