Jeff King <p...@peff.net> writes:

>> > @@ -617,6 +618,8 @@ static struct commit_list *paint_down_to_common(struct 
>> > commit *one, int n, struc
>> >  
>> >    one->object.flags |= PARENT1;
>> >    commit_list_insert_by_date(one, &list);
>> > +  if (!n)
>> > +          return list;
>> >    for (i = 0; i < n; i++) {
>> >            twos[i]->object.flags |= PARENT2;
>> >            commit_list_insert_by_date(twos[i], &list);
>
> This seems like an obvious optimization, but does it really have
> anything to do with the patch at hand?

The function picks one and paints it against all others, but the
logic assumes there must be at least one other to paint against;
otherwise the traversal will not ever find a node that is painted
with both PARENT1 and PARENT2 to stop, leading us to traverse all
the way down to root.


--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to