revision: parse parent in indegree_walk_step()

In indegree_walk_step(), we add unvisited parents to the indegree queue.
However, parents are not guaranteed to be parsed. As the indegree queue
sorts by generation number, let's parse parents before inserting them to
ensure the correct priority order.

Signed-off-by: Abhishek Kumar <abhishekkumar8222@gmail.com>
Reviewed-by: Taylor Blau <me@ttaylorr.com>
Reviewed-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Abhishek Kumar 2021-01-16 18:11:09 +00:00 committed by Junio C Hamano
parent e30c5ee76c
commit 2f9bbb6d91

View File

@ -3373,6 +3373,9 @@ static void indegree_walk_step(struct rev_info *revs)
struct commit *parent = p->item;
int *pi = indegree_slab_at(&info->indegree, parent);
if (repo_parse_commit_gently(revs->repo, parent, 1) < 0)
return;
if (*pi)
(*pi)++;
else