diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2015-08-12 20:45:55 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2015-08-12 20:45:55 -0700 |
commit | a3cf3b0c03518a39391659da887f5dbe0ad5fc16 (patch) | |
tree | 1a95bf7ba4b31adce4003734148f24b253fe41a9 | |
parent | 80023f287c52876b82af43027dd4605ab939d006 (diff) | |
download | txr-a3cf3b0c03518a39391659da887f5dbe0ad5fc16.tar.gz txr-a3cf3b0c03518a39391659da887f5dbe0ad5fc16.tar.bz2 txr-a3cf3b0c03518a39391659da887f5dbe0ad5fc16.zip |
Improvement in hash bang code.
* parser.c (read_eval_stream): Simplify hash bang code and avoid
creating a string that might not end up being used.
-rw-r--r-- | parser.c | 9 |
1 files changed, 3 insertions, 6 deletions
@@ -312,13 +312,10 @@ val read_eval_stream(val stream, val error_stream, val hash_bang_support) if (hash_bang_support) { val firstline = get_line(stream); - if (firstline) { + if (firstline && !match_str(firstline, lit("#!"), nil)) { 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)); - } + val string_stream = make_string_byte_input_stream(flwnl); + stream = make_catenated_stream(list(string_stream, stream, nao)); } } |