Commits


rename diff_atom->d to diff_atom->root, because it always is The idea was that for each diff box within the files, the atoms would have a backpointer to the current layer of diff_data (indicating the current section), but it is not actually needed to update the backpointer in each atom to the current diff_data. That is why the current code always points atom->d to the root diff_data for the entire file. Clarify by proper name. Constructs like atom->d->root->foo are redundant, just use atom->root->foo.


add missing curly braces (clang reported misleading indentation)


move headers from include/diff/ to include/; makes things easier for consumers


check results of ARRAYLIST_ADD


check return value of diff_output_lines


optionally provide information about the generated diff to the API user


add APIs to write out the left and right versions of diff chunks


move some definitions from the public diff_main.h to an internal header file


convert abort() in diff_output_lines() to error return


use buffered stdio if falling back on file i/o; this is much faster


avoid include statements in header files; make each .c pull in what's needed


fall back on file i/o in case an input file cannot be memory-mapped


KNF: use max 80 columns


KNF: function declaration return types on separate line


Only print (unified) header in unified format.


Remove unused `arbitrary_info'.


dont escape tabs in text output


initial commit