diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2007-12-27 13:57:07 +1100 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2007-12-27 13:57:07 +1100 |
commit | 13c6a86f0dcd34332b35ebce9ac21b01aa9ad815 (patch) | |
tree | 07946526ea768d70d335bddfe8af9f064febf8d6 /src | |
parent | [PARSER] Add FAKEEOFMARK for expandstr (diff) | |
download | dash-13c6a86f0dcd34332b35ebce9ac21b01aa9ad815.tar.gz dash-13c6a86f0dcd34332b35ebce9ac21b01aa9ad815.zip |
[PARSER] Do not show prompts in expandstr
Once I fixed the previous problem it became apparent that we never dealt with prompts with new-lines in them correctly. The problem is that we showed a secondary prompt for each of them. This patch disables prompt generation in expandstr. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'src')
-rw-r--r-- | src/parser.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/parser.c b/src/parser.c index 3206328..9dd6185 100644 --- a/src/parser.c +++ b/src/parser.c @@ -1499,10 +1499,18 @@ const char * expandstr(const char *ps) { union node n; + int saveprompt; /* XXX Fix (char *) cast. */ setinputstring((char *)ps); + + saveprompt = doprompt; + doprompt = 0; + readtoken1(pgetc(), DQSYNTAX, FAKEEOFMARK, 0); + + doprompt = saveprompt; + popfile(); n.narg.type = NARG; |