summaryrefslogtreecommitdiff
path: root/Src/exec.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/exec.c')
-rw-r--r--Src/exec.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/Src/exec.c b/Src/exec.c
index c39680de7..e5c64555c 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -4387,8 +4387,17 @@ gethere(char **strp, int typ)
bptr = buf + bsiz;
bsiz *= 2;
}
- if (lexstop || c == '\n')
+ if (lexstop)
break;
+ if (c == '\n') {
+ if (!qt && bptr > t && *(bptr - 1) == '\\') {
+ /* line continuation */
+ bptr--;
+ c = hgetc();
+ continue;
+ } else
+ break;
+ }
*bptr++ = c;
c = hgetc();
}