diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | match.c | 3 |
2 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,11 @@ +2011-11-13 Kaz Kylheku <kaz@kylheku.com> + + Bug #34813 + + * match.c (v_freeform): Fail if the data is null, + to avoid a false positive match as an empty line, followed by the type + error of incrementing a nonexistent data line number. + 2011-11-12 Kaz Kylheku <kaz@kylheku.com> * parser.y: Correctly record line number info for regex. @@ -1670,6 +1670,9 @@ static val v_freeform(match_files_ctx *c) if ((c->spec = rest(c->spec)) == nil) { sem_error(first_spec, lit("freeform must be followed by a query line"), nao); + } else if (!c->data) { + debuglf(specline, lit("freeform match failure: no data"), nao); + return nil; } else { val limit = or2(if2(nump(first(vals)), first(vals)), if2(nump(second(vals)), second(vals))); |