diff options
Diffstat (limited to 'usr.bin/indent')
-rw-r--r-- | usr.bin/indent/lexi.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/usr.bin/indent/lexi.c b/usr.bin/indent/lexi.c index 7c3892c..12e51dc 100644 --- a/usr.bin/indent/lexi.c +++ b/usr.bin/indent/lexi.c @@ -209,8 +209,18 @@ lexi() } } else - while (chartype[*buf_ptr] == alphanum) { /* copy it over */ + while (chartype[*buf_ptr] == alphanum || *buf_ptr == BACKSLASH) { + /* fill_buffer() terminates buffer with newline */ + if (*buf_ptr == BACKSLASH) { + if (*(buf_ptr + 1) == '\n') { + buf_ptr += 2; + if (buf_ptr >= buf_end) + fill_buffer(); + } else + break; + } CHECK_SIZE_TOKEN; + /* copy it over */ *e_token++ = *buf_ptr++; if (buf_ptr >= buf_end) fill_buffer(); |