mirror of
https://github.com/mawww/kakoune.git
synced 2025-01-03 01:03:12 +03:00
Use the provided equal functor for prefix/suffix detection in diff
We were wrongly using the `==` operator.
This commit is contained in:
parent
bed8d9c48e
commit
7b96d56996
@ -113,11 +113,11 @@ void find_diff_rec(Iterator a, int begA, int endA,
|
||||
int* V1, int* V2, Equal eq, Vector<Diff>& diffs)
|
||||
{
|
||||
int prefix_len = 0;
|
||||
while (begA != endA and begB != endB and a[begA] == b[begB])
|
||||
while (begA != endA and begB != endB and eq(a[begA], b[begB]))
|
||||
++begA, ++begB, ++prefix_len;
|
||||
|
||||
int suffix_len = 0;
|
||||
while (begA != endA and begB != endB and a[endA-1] == b[endB-1])
|
||||
while (begA != endA and begB != endB and eq(a[endA-1], b[endB-1]))
|
||||
--endA, --endB, ++suffix_len;
|
||||
|
||||
append_diff(diffs, {Diff::Keep, prefix_len, 0});
|
||||
|
Loading…
Reference in New Issue
Block a user