Commit Briefs


Neels Hofmeyr

patience: do not swallow identical neighbors (neels/patience2)

This does not make much sense, because if common-unique lines swallow their neighboring ones, they count less, and another bad, shorter sequence may gain more weight than a very long sequence that was combined to just one common-unique chunk. It also much simplifies the code and avoids bugs we had to implement complex fixes for before.


Christian Weisgerber

add a missing include for uint8_t and switch from <inttypes.h> to <stdint.h>

ok millert stsp





Neels Hofmeyr

remove stray blank line


Neels Hofmeyr

patience debug


Neels Hofmeyr

patience comments




Neels Hofmeyr

patience: use qsort




Neels Hofmeyr

debug: patience: mark unique debug




Stefan Sperling

use mergesort(3) instead of qsort(3) in patience diff

Fixes test failures on OpenBSD due to unstable results of qsort if two or more elements are equal. Add a compat copy of OpenBSD mergesort(3) for Linux.



Stefan Sperling

wrap a comment that had overlong lines



Neels Hofmeyr

move patience data out of struct diff_atom

Now allocating patience specific data only when patience is going to be used. This may allow using forward-Myers more often, since the state size per line is significantly smaller. Patience instead allocates an array, puts it in the current diff_data, and also place a pointer of the current diff_data in the root diff_data (since each atom points to the root diff_data).




Stefan Sperling

repair DEBUG build