diff options
author | Junio C Hamano <gitster@pobox.com> | 2021-07-13 23:52:50 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-07-13 23:52:50 (GMT) |
commit | 4da281e84d87b099ba8d0a255534dc1251be968e (patch) | |
tree | 5919bdb367772fbbbe822f72f33ea2256b94d33a /combine-diff.c | |
parent | c9780bb2ca81828ec4f43c60b2107c335271a72f (diff) | |
parent | 5d93460024541909337d6b08a8bec10b71caaf73 (diff) | |
download | git-4da281e84d87b099ba8d0a255534dc1251be968e.zip git-4da281e84d87b099ba8d0a255534dc1251be968e.tar.gz git-4da281e84d87b099ba8d0a255534dc1251be968e.tar.bz2 |
Merge branch 'ab/pickaxe-pcre2'
Rewrite the backend for "diff -G/-S" to use pcre2 engine when
available.
* ab/pickaxe-pcre2: (22 commits)
xdiff-interface: replace discard_hunk_line() with a flag
xdiff users: use designated initializers for out_line
pickaxe -G: don't special-case create/delete
pickaxe -G: terminate early on matching lines
xdiff-interface: allow early return from xdiff_emit_line_fn
xdiff-interface: prepare for allowing early return
pickaxe -S: slightly optimize contains()
pickaxe: rename variables in has_changes() for brevity
pickaxe -S: support content with NULs under --pickaxe-regex
pickaxe: assert that we must have a needle under -G or -S
pickaxe: refactor function selection in diffcore-pickaxe()
perf: add performance test for pickaxe
pickaxe/style: consolidate declarations and assignments
diff.h: move pickaxe fields together again
pickaxe: die when --find-object and --pickaxe-all are combined
pickaxe: die when -G and --pickaxe-regex are combined
pickaxe tests: add missing test for --no-pickaxe-regex being an error
pickaxe tests: test for -G, -S and --find-object incompatibility
pickaxe tests: add test for "log -S" not being a regex
pickaxe tests: add test for diffgrep_consume() internals
...
Diffstat (limited to 'combine-diff.c')
-rw-r--r-- | combine-diff.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/combine-diff.c b/combine-diff.c index 7d925ce..d93782d 100644 --- a/combine-diff.c +++ b/combine-diff.c @@ -403,11 +403,11 @@ static void consume_hunk(void *state_, state->sline[state->nb-1].p_lno[state->n] = state->ob; } -static void consume_line(void *state_, char *line, unsigned long len) +static int consume_line(void *state_, char *line, unsigned long len) { struct combine_diff_state *state = state_; if (!state->lost_bucket) - return; /* not in any hunk yet */ + return 0; /* not in any hunk yet */ switch (line[0]) { case '-': append_lost(state->lost_bucket, state->n, line+1, len-1); @@ -417,6 +417,7 @@ static void consume_line(void *state_, char *line, unsigned long len) state->lno++; break; } + return 0; } static void combine_diff(struct repository *r, |