From ba7e2f2fa7ebe01d8eb733aff53b01b217ebabac Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Fri, 10 Jul 2015 08:24:25 -0700 Subject: Fix off by one error line numbers for .tl files. * parser.c (read_eval_stream): Add terminating newline to the first line that was examined for hash bang. --- ChangeLog | 7 +++++++ parser.c | 10 +++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index aa862461..94506078 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2015-07-10 Kaz Kylheku + + Fix off by one error line numbers for .tl files. + + * parser.c (read_eval_stream): Add terminating newline to + the first line that was examined for hash bang. + 2015-07-10 Kaz Kylheku Remove unused "primer" member from parser_t. diff --git a/parser.c b/parser.c index 26d7dfba..cbb4893b 100644 --- a/parser.c +++ b/parser.c @@ -281,9 +281,13 @@ val read_eval_stream(val stream, val error_stream, val hash_bang_support) if (hash_bang_support) { val firstline = get_line(stream); - if (!match_str(firstline, lit("#!"), nil)) { - val string_stream = make_string_byte_input_stream(firstline); - stream = make_catenated_stream(list(string_stream, stream, nao)); + if (firstline) { + val flwnl = cat_str(list(firstline, lit("\n"), nao), nil); + + if (!match_str(flwnl, lit("#!"), nil)) { + val string_stream = make_string_byte_input_stream(flwnl); + stream = make_catenated_stream(list(string_stream, stream, nao)); + } } } -- cgit v1.2.3