Merge branch 'yc/xdiff-patience-optim'
The way patience diff finds LCS has been optimized. * yc/xdiff-patience-optim: xdiff: optimize patience diff's LCS searchmaint
commit
7fc0b33b5d
|
|
@ -211,7 +211,10 @@ static int find_longest_common_sequence(struct hashmap *map, struct entry **res)
|
|||
for (entry = map->first; entry; entry = entry->next) {
|
||||
if (!entry->line2 || entry->line2 == NON_UNIQUE)
|
||||
continue;
|
||||
i = binary_search(sequence, longest, entry);
|
||||
if (longest == 0 || entry->line2 > sequence[longest - 1]->line2)
|
||||
i = longest - 1;
|
||||
else
|
||||
i = binary_search(sequence, longest, entry);
|
||||
entry->previous = i < 0 ? NULL : sequence[i];
|
||||
++i;
|
||||
if (i <= anchor_i)
|
||||
|
|
|
|||
Loading…
Reference in New Issue