Thread (1 message) 1 message, 1 author, 2020-10-24

Re: [PATCH v4 02/10] revision: parse parent in indegree_walk_step()

From: Jakub Narębski <hidden>
Date: 2020-10-24 23:44:32

"Abhishek Kumar via GitGitGadget" [off-list ref] writes:
From: Abhishek Kumar <redacted>

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.
All right, we need to ensure the parent commit is parsed to know its
generation number, to insert in into priority queue in a correct order.
Signed-off-by: Abhishek Kumar <redacted>
Looks good.
quoted hunk
---
 revision.c | 3 +++
 1 file changed, 3 insertions(+)
diff --git a/revision.c b/revision.c
index aa62212040..c97abcdde1 100644
--- a/revision.c
+++ b/revision.c
@@ -3381,6 +3381,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
Best,
-- 
Jakub Narębski
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help