Merge branch 'jk/maint-diff-grep-textconv' into maint
"git diff -G<pattern>" did not honor textconv filter when looking for changes. * jk/maint-diff-grep-textconv: diff_grep: use textconv buffers for add/deleted files
This commit is contained in:
commit
35cae74c4d
@ -104,10 +104,10 @@ static int diff_grep(struct diff_filepair *p, struct diff_options *o,
|
||||
if (!mf2.ptr)
|
||||
return 0; /* ignore unmerged */
|
||||
/* created "two" -- does it have what we are looking for? */
|
||||
hit = !regexec(regexp, p->two->data, 1, ®match, 0);
|
||||
hit = !regexec(regexp, mf2.ptr, 1, ®match, 0);
|
||||
} else if (!mf2.ptr) {
|
||||
/* removed "one" -- did it have what we are looking for? */
|
||||
hit = !regexec(regexp, p->one->data, 1, ®match, 0);
|
||||
hit = !regexec(regexp, mf1.ptr, 1, ®match, 0);
|
||||
} else {
|
||||
/*
|
||||
* We have both sides; need to run textual diff and see if
|
||||
|
@ -84,6 +84,18 @@ test_expect_success 'status -v produces text' '
|
||||
git reset --soft HEAD@{1}
|
||||
'
|
||||
|
||||
test_expect_success 'grep-diff (-G) operates on textconv data (add)' '
|
||||
echo one >expect &&
|
||||
git log --root --format=%s -G0 >actual &&
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'grep-diff (-G) operates on textconv data (modification)' '
|
||||
echo two >expect &&
|
||||
git log --root --format=%s -G1 >actual &&
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
cat >expect.stat <<'EOF'
|
||||
file | Bin 2 -> 4 bytes
|
||||
1 file changed, 0 insertions(+), 0 deletions(-)
|
||||
|
Loading…
Reference in New Issue
Block a user