aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shell/hush.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/shell/hush.c b/shell/hush.c
index 249728b9d..41a4653ea 100644
--- a/shell/hush.c
+++ b/shell/hush.c
@@ -3694,9 +3694,10 @@ static void debug_print_tree(struct pipe *pi, int lvl)
3694 3694
3695 pin = 0; 3695 pin = 0;
3696 while (pi) { 3696 while (pi) {
3697 fdprintf(2, "%*spipe %d %sres_word=%s followup=%d %s\n", 3697 fdprintf(2, "%*spipe %d #cmds:%d %sres_word=%s followup=%d %s\n",
3698 lvl*2, "", 3698 lvl*2, "",
3699 pin, 3699 pin,
3700 pi->num_cmds,
3700 (IF_HAS_KEYWORDS(pi->pi_inverted ? "! " :) ""), 3701 (IF_HAS_KEYWORDS(pi->pi_inverted ? "! " :) ""),
3701 RES[pi->res_word], 3702 RES[pi->res_word],
3702 pi->followup, PIPE[pi->followup] 3703 pi->followup, PIPE[pi->followup]
@@ -3839,6 +3840,9 @@ static void done_pipe(struct parse_context *ctx, pipe_style type)
3839#endif 3840#endif
3840 /* Replace all pipes in ctx with one newly created */ 3841 /* Replace all pipes in ctx with one newly created */
3841 ctx->list_head = ctx->pipe = pi; 3842 ctx->list_head = ctx->pipe = pi;
3843 /* for cases like "cmd && &", do not be tricked by last command
3844 * being null - the entire {...} & is NOT null! */
3845 not_null = 1;
3842 } else { 3846 } else {
3843 no_conv: 3847 no_conv:
3844 ctx->pipe->followup = type; 3848 ctx->pipe->followup = type;