Derrick Stolee <stolee@xxxxxxxxx> writes: > This breakdown of the cases is informative, and I like how self-contained > the change is. > .... > > This patch looks good to me. Thanks! > > Reviewed-by: Derrick Stolee <dstolee@xxxxxxxxxxxxx> Thanks, both. A related tangent, but I was looking at the data structure involved and noticed that the casting between structure types "merged_info" and "conflict_info" looked a bit ugly. It might be worth cleaning them up into (A) a union with two struct, with "clean" member in the union to switch between the two structures; or (B) a single structure that looks like "conflict_info" but inlines members of "merged_info" into it. The latter may be cleaner and simpler, and the unified data type would be the "merge info", which may be representing cleanly merged path, or conflicted path, and would justify conditional use of some members based on the value of the .clean member.