diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2011-09-27 18:39:22 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2011-09-27 18:39:22 -0700 |
commit | 0a6161f1d4c617582cab236042eea6a628e81bd3 (patch) | |
tree | f5a30dc8439b639c537108c98ac9edd151d26016 /match.c | |
parent | dc20e04cf1e2645158d01f1fc06d744402a1ee99 (diff) | |
download | txr-0a6161f1d4c617582cab236042eea6a628e81bd3.tar.gz txr-0a6161f1d4c617582cab236042eea6a628e81bd3.tar.bz2 txr-0a6161f1d4c617582cab236042eea6a628e81bd3.zip |
* match.c (match_files): Another bugfix to skip.
If a hard skip tries to go beyond EOF, then the query
must fail. However, a skip to exactly EOF is fine.
I.e. data can hit nil at the same time as the right
number of skip iterations is performed.
Diffstat (limited to 'match.c')
-rw-r--r-- | match.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -987,6 +987,13 @@ repeat_spec_same_data: } if (min) { + if (reps_min != cmin) { + debuglf(spec_linenum, lit("skipped ~a/~a lines to ~a:~a"), + num(data_lineno - old_lineno), num(cmin), + first(files), num(data_lineno), nao); + uw_block_return(nil, nil); + } + debuglf(spec_linenum, lit("skipped ~a lines to ~a:~a"), num(data_lineno - old_lineno), first(files), num(data_lineno), nao); |