From: Linus Torvalds Date: Mon, 28 Apr 2008 23:27:49 +0000 (-0700) Subject: fetch-pack: do not stop traversing an already parsed commit X-Git-Tag: v1.5.5.2~14 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=72269ad9564b700e6aab30338e35b4e6ffea854d;p=git.git fetch-pack: do not stop traversing an already parsed commit f3ec549 (fetch-pack: check parse_commit/object results, 2008-03-03) broke common ancestor computation by stopping traversal when it sees an already parsed commit. This should fix it. Signed-off-by: Junio C Hamano --- diff --git a/builtin-fetch-pack.c b/builtin-fetch-pack.c index 65350ca52..fe8cfa0cb 100644 --- a/builtin-fetch-pack.c +++ b/builtin-fetch-pack.c @@ -117,15 +117,15 @@ static const unsigned char* get_rev(void) while (commit == NULL) { unsigned int mark; - struct commit_list *parents = NULL; + struct commit_list *parents; if (rev_list == NULL || non_common_revs == 0) return NULL; commit = rev_list->item; - if (!(commit->object.parsed)) - if (!parse_commit(commit)) - parents = commit->parents; + if (commit->object.parsed) + parse_commit(commit); + parents = commit->parents; commit->object.flags |= POPPED; if (!(commit->object.flags & COMMON))