diff options
-rw-r--r-- | extra/lex.l | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/extra/lex.l b/extra/lex.l index 2023439..45dde56 100644 --- a/extra/lex.l +++ b/extra/lex.l @@ -26,11 +26,13 @@ fillbuf(char *buf, size_t max_size) if (!*lex_curp) { if (lex_argi == lex_argc) break; + if (lex_argi) + buf[consumed++] = ' '; lex_curp = lex_argv[lex_argi++]; } n = strlen(lex_curp); - if (n > max_size) - n = max_size; + if (n > max_size - consumed) + n = max_size - consumed; memcpy(buf + consumed, lex_curp, n); lex_curp += n; consumed += n; |