diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2008-09-11 17:14:38 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2008-09-11 17:14:38 +0000 |
commit | d37f9672cb2e29f7dd3b32c9164250d56549f4bc (patch) | |
tree | a3730f8eb050d58307ba5f27b417165aa15644c5 /Src/text.c | |
parent | fb67cd46eafb1301844ed98f1c0e8d2cf8cbdee4 (diff) | |
download | zsh-d37f9672cb2e29f7dd3b32c9164250d56549f4bc.tar.gz zsh-d37f9672cb2e29f7dd3b32c9164250d56549f4bc.tar.xz zsh-d37f9672cb2e29f7dd3b32c9164250d56549f4bc.zip |
25651: make getpermtext() output indentation more logical
Diffstat (limited to 'Src/text.c')
-rw-r--r-- | Src/text.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/Src/text.c b/Src/text.c index eabb51268..074afe581 100644 --- a/Src/text.c +++ b/Src/text.c @@ -118,7 +118,7 @@ taddnl(void) /**/ mod_export char * -getpermtext(Eprog prog, Wordcode c) +getpermtext(Eprog prog, Wordcode c, int start_indent) { struct estate s; @@ -131,6 +131,7 @@ getpermtext(Eprog prog, Wordcode c) s.pc = c; s.strs = prog->strs; + tindent = start_indent; tnewlins = 1; tbuf = (char *)zalloc(tsiz = 32); tptr = tbuf; @@ -162,6 +163,7 @@ getjobtext(Eprog prog, Wordcode c) s.pc = c; s.strs = prog->strs; + tindent = 0; tnewlins = 0; tbuf = NULL; tptr = jbuf; @@ -245,16 +247,6 @@ gettext2(Estate state) int stack = 0; wordcode code; - /* - * Hack for parsing "simple" format of function definitions. - * In this case there is no surrounding context so the initial - * indent should be zero. - */ - if (wc_code(*state->pc) == WC_FUNCDEF) - tindent = 0; - else - tindent = 1; - while (1) { if (stack) { if (!(s = tstack)) |