summaryrefslogtreecommitdiff
path: root/Src/lex.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/lex.c')
-rw-r--r--Src/lex.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/Src/lex.c b/Src/lex.c
index 7748bedad..776eaf95a 100644
--- a/Src/lex.c
+++ b/Src/lex.c
@@ -356,6 +356,16 @@ yylex(void)
ALLOWHIST
cmdpop();
hwend();
+ if (!name) {
+ zerr("here document too large");
+ while (hdocs) {
+ next = hdocs->next;
+ zfree(hdocs, sizeof(struct heredocs));
+ hdocs = next;
+ }
+ tok = LEXERR;
+ break;
+ }
setheredoc(hdocs->pc, REDIR_HERESTR, name);
zfree(hdocs, sizeof(struct heredocs));
hdocs = next;