Commit Briefs


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



Stefan Sperling

rename 'debug.h' to 'diff_debug.h'






Stefan Sperling

move 'struct range' and related functions into the diff_ namespace

no functional change



Neels Hofmeyr

KNF: use max 80 columns



Neels Hofmeyr

Kill unused variables


Neels Hofmeyr

Fix macro diff_atom_*idx return value types

The macros sometimes returned unsigned int (atoms.len) or long int ((ATOM) - head). Make that always unsigned int, with some range checks against negative values.



Neels Hofmeyr

initial commit