summaryrefslogtreecommitdiff
path: root/Src/exec.c
diff options
context:
space:
mode:
authorRicardo Giorni <ricardo@giorni.co>2018-04-29 12:05:39 -0700
committerBarton E. Schaefer <schaefer@zsh.org>2018-04-29 12:05:39 -0700
commitf7519811e1bbe990ff1c3d499ffb70cfc2d034f8 (patch)
tree1bd8450fa2b3abea765dcb87a87f7f5965df53a0 /Src/exec.c
parent2d3b3510a80046cd4222bf9c515afc90bdf76418 (diff)
downloadzsh-f7519811e1bbe990ff1c3d499ffb70cfc2d034f8.tar.gz
zsh-f7519811e1bbe990ff1c3d499ffb70cfc2d034f8.zip
47201: fix 42355 for multiple backslashes
Diffstat (limited to 'Src/exec.c')
-rw-r--r--Src/exec.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/Src/exec.c b/Src/exec.c
index ee55aac8c..64cf5ae46 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -4435,16 +4435,16 @@ gethere(char **strp, int typ)
bptr = buf + bsiz;
bsiz *= 2;
}
- if (lexstop)
+ if (lexstop || c == '\n')
break;
- if (c == '\n') {
- if (!qt && bptr > t && *(bptr - 1) == '\\') {
- /* line continuation */
+ if (!qt && c == '\\') {
+ *bptr++ = c;
+ c = hgetc();
+ if (c == '\n') {
bptr--;
c = hgetc();
continue;
- } else
- break;
+ }
}
*bptr++ = c;
c = hgetc();