aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2020-09-29 13:25:43 -0700
committerBruce Hill <bruce@bruce-hill.com>2020-09-29 13:25:43 -0700
commitcfbdc7aee792d501484f2954086d813acc532828 (patch)
treeeeaa66011c2b4e2b273d74aa8109aa454d2004f7
parentba8b41ed686715af8ceaf49dfaef5acb70d8f4fd (diff)
Fixed off-by-one error and bug in filename-printing logic
-rw-r--r--grammars/builtins.bpeg2
-rw-r--r--vm.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/grammars/builtins.bpeg b/grammars/builtins.bpeg
index 2fd092f..aa19bab 100644
--- a/grammars/builtins.bpeg
+++ b/grammars/builtins.bpeg
@@ -23,7 +23,7 @@ find-all: (
define-highlights
add-filename
*(!..pattern {..\n=>})
- +(>..pattern add-line-number +(..hl-pattern) ..(\n/$) / {..(\n/$)=>})
+ +(>..pattern add-line-number +(..hl-pattern) ..(\n/$$) / {..\n=>})
[{!<\n => "\n"}]
)
only-matches: (
diff --git a/vm.c b/vm.c
index ffcfdb0..8b7ad7b 100644
--- a/vm.c
+++ b/vm.c
@@ -100,7 +100,7 @@ static match_t *_match(grammar_t *g, file_t *f, const char *str, vm_op_t *op, un
{
switch (op->op) {
case VM_ANYCHAR: {
- if (str >= f->end - 1 || (!op->multiline && *str == '\n'))
+ if (str >= f->end || (!op->multiline && *str == '\n'))
return NULL;
match_t *m = calloc(sizeof(match_t), 1);
m->op = op;