From 7cee00e8ae515400b36e1464e55414ccc569c05b Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 24 Jul 2009 01:08:03 +0200 Subject: [PATCH] ash: further fixes to debug machinery (closes bug 485) Signed-off-by: Denys Vlasenko --- shell/ash.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/shell/ash.c b/shell/ash.c index 613a66dbc..3755202eb 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -263,7 +263,7 @@ static void trace_vprintf(const char *fmt, va_list va); /* ============ Utility functions */ #define xbarrier() do { __asm__ __volatile__ ("": : :"memory"); } while (0) -/* C99 say: "char" declaration may be signed or unsigned by default */ +/* C99 says: "char" declaration may be signed or unsigned by default */ #define signed_char2int(sc) ((int)(signed char)(sc)) static int isdigit_str9(const char *str) @@ -988,7 +988,7 @@ shtree(union node *n, int ind, char *pfx, FILE *fp) break; case NPIPE: for (lp = n->npipe.cmdlist; lp; lp = lp->next) { - shcmd(lp->n, fp); + shtree(lp->n, 0, NULL, fp); if (lp->next) fputs(" | ", fp); } @@ -4387,11 +4387,12 @@ cmdtxt(union node *n) cmdputs("if "); cmdtxt(n->nif.test); cmdputs("; then "); - n = n->nif.ifpart; if (n->nif.elsepart) { - cmdtxt(n); + cmdtxt(n->nif.ifpart); cmdputs("; else "); n = n->nif.elsepart; + } else { + n = n->nif.ifpart; } p = "; fi"; goto dotail; @@ -11859,8 +11860,8 @@ cmdloop(int top) #endif } n = parsecmd(inter); -#if DEBUG > 2 - if (debug && (n != NODE_EOF)) +#if DEBUG + if (DEBUG > 2 && debug && (n != NODE_EOF)) showtree(n); #endif if (n == NODE_EOF) { -- 2.25.1