Jeff King <peff@xxxxxxxx> writes: > The internals of the path diffing code, including ll_diff_tree_paths(), > all take an extra combine_diff_path parameter which they use as the tail > of a list of results, appending any new entries to it. > > The public-facing diff_tree_paths() takes the same argument, but it just > makes the callers more awkward. They always start with a clean list, and > have to set up a fake head struct to pass in. > > Let's keep the public API clean by always returning a new list. That > keeps the fake struct as an implementation detail of tree-diff.c. Yes, this is much nicer. I've always hated these code paths related to "multitree" optimization, but these clean-ups make them more palatable. Thanks.