show-branch: Fix another performance problem.
When naming commits, stop walking the parent chain as soon as we find a commit that already has a name. The parent chain of that commit will be walked later on in any case (or may even have been walked already). This avoids O(n^2) behavior; on a tree where show-branch displays 6800 commits, the total run time drops from 77 seconds to 5 seconds. Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
4812a93a8c
commit
f8263c5339
@ -89,6 +89,8 @@ static int name_first_parent_chain(struct commit *c)
|
||||
name_parent(c, p);
|
||||
i++;
|
||||
}
|
||||
else
|
||||
break;
|
||||
c = p;
|
||||
}
|
||||
return i;
|
||||
|
Loading…
Reference in New Issue
Block a user