Hi Peff, On Tue, 16 May 2017, Jeff King wrote: > On Wed, May 17, 2017 at 10:38:36AM +0900, Junio C Hamano wrote: > > > > - add_pending_object(revs, a_obj, this); > > > - add_pending_object(revs, b_obj, next); > > > + add_pending_object_with_path(revs, a_obj, this, > > > + oc.mode, > > > + oc.path[0] ? oc.path : NULL); > > > + add_pending_object_with_path(revs, b_obj, next, > > > + oc2.mode, > > > + oc2.path[0] ? oc2.path : NULL); > > > > The fix is surprisingly simple, and I think it definitely goes in > > the right direction. > > > > Somehow, it bothers me to be forced to view (a_obj, this, from_sha1, > > oc) vs (b_obj, next, sha1, oc2) as a sensibly corresponding pair of > > tuples, but that is not something your introduction of "oc2" > > started, so I won't complain ;-). > > Yes, in my polishing I switched this out at least "oc_a" and "oc_b" so > we could be sure they match correctly. I think this whole "dotdot" > conditional could be pulled out to its own function, and probably > consistently use "a" and "b" for the endpoints. I'll see what > refactoring I can do to make it more readable. So you drive this forward? That would really help me a lot. Please make my 1/2 part of your patches to that end. Thanks, Dscho