Re: Bad objects error since upgrading GitHub servers to 1.6.1
Linus Torvalds <torvalds@linux-foundation.org> writes:
Show 25 quoted lines
> On Tue, 27 Jan 2009, Junio C Hamano wrote:
>>
>> - When digging deeper into the ancestry chain of a commit that is already
>> painted as UNINTERESTING, in order to paint its parents UNINTERESTING,
>> we barfed if parse_parent() for a parent commit object failed. We can
>> ignore such a parent commit object.
>
> Wouldn't it be better to still mark it UNINTERESTING too?
>
>> @@ -480,7 +483,7 @@ static int add_parents_to_list(struct rev_info *revs, struct commit *commit,
>> struct commit *p = parent->item;
>> parent = parent->next;
>> if (parse_commit(p) < 0)
>> - return -1;
>> + continue;
>> p->object.flags |= UNINTERESTING;
>> if (p->parents)
>> mark_parents_uninteresting(p);
>
> IOW, move that
>
> p->object.flags |= UNINTERESTING;
>
> to before parse_commit(). That's assuming 'parent' is never NULL, of
> course.
Ok, makes sense. Will do.