show-branch: fix commit naming breakage.

It was ignoring the generation number of the commit when naming 2nd
and later parents, showing "(linus^n)^2" for any <n> incorrectly as
"linus^2".

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano 2005-09-24 23:33:02 -07:00
parent c9fc748f84
commit fbaf834de1

View file

@ -138,7 +138,20 @@ static void name_commits(struct commit_list *list,
nth++;
if (p->object.util)
continue;
sprintf(newname, "%s^%d", n->head_name, nth);
switch (n->generation) {
case 0:
sprintf(newname, "%s^%d",
n->head_name, nth);
break;
case 1:
sprintf(newname, "%s^^%d",
n->head_name, nth);
break;
default:
sprintf(newname, "%s~%d^%d",
n->head_name, n->generation,
nth);
}
name_commit(p, strdup(newname), 0);
i++;
name_first_parent_chain(p);