git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 10/23] commit-reach.c: allow remove_redundant to handle any repo

From
Stefan Beller <sbeller@google.com>
Date
Dec 15, 2018, 00:09 UTC
Message-ID
<20181215000942.46033-11-sbeller@google.com>
In-Reply-To
<20181215000942.46033-1-sbeller@google.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 commit-reach.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/commit-reach.c b/commit-reach.c
index a53b31e6a2..81015830cb 100644
--- a/commit-reach.c
+++ b/commit-reach.c
@@ -156,7 +156,7 @@ struct commit_list *get_octopus_merge_bases(struct commit_list *in)
 	return ret;
 }
 
-static int remove_redundant(struct commit **array, int cnt)
+static int remove_redundant(struct repository *r, struct commit **array, int cnt)
 {
 	/*
 	 * Some commit in the array may be an ancestor of
@@ -174,7 +174,7 @@ static int remove_redundant(struct commit **array, int cnt)
 	ALLOC_ARRAY(filled_index, cnt - 1);
 
 	for (i = 0; i < cnt; i++)
-		parse_commit(array[i]);
+		repo_parse_commit(r, array[i]);
 	for (i = 0; i < cnt; i++) {
 		struct commit_list *common;
 		uint32_t min_generation = array[i]->generation;
@@ -190,7 +190,7 @@ static int remove_redundant(struct commit **array, int cnt)
 			if (array[j]->generation < min_generation)
 				min_generation = array[j]->generation;
 		}
-		common = paint_down_to_common(the_repository, array[i], filled,
+		common = paint_down_to_common(r, array[i], filled,
 					      work, min_generation);
 		if (array[i]->object.flags & PARENT2)
 			redundant[i] = 1;
@@ -249,7 +249,7 @@ static struct commit_list *get_merge_bases_many_0(struct commit *one,
 	clear_commit_marks(one, all_flags);
 	clear_commit_marks_many(n, twos, all_flags);
 
-	cnt = remove_redundant(rslt, cnt);
+	cnt = remove_redundant(the_repository, rslt, cnt);
 	result = NULL;
 	for (i = 0; i < cnt; i++)
 		commit_list_insert_by_date(rslt[i], &result);
@@ -370,7 +370,7 @@ struct commit_list *reduce_heads(struct commit_list *heads)
 			p->item->object.flags &= ~STALE;
 		}
 	}
-	num_head = remove_redundant(array, num_head);
+	num_head = remove_redundant(the_repository, array, num_head);
 	for (i = 0; i < num_head; i++)
 		tail = &commit_list_insert(array[i], tail)->next;
 	free(array);
-- 
2.20.0.405.gbc1bbc6f85-goog
Previous: Stefan BellerNext: Stefan Beller
Message 11 of 26 in “sb/more-repo-in-api”
  1. 00/23 sb/more-repo-in-apiStefan Beller, Dec 15, 2018
  2. 01/23 sha1_file: allow read_object to read objects in arbitrary repositoriesStefan Beller, Dec 15, 2018
  3. 02/23 packfile: allow has_packed_and_bad to handle arbitrary repositoriesStefan Beller, Dec 15, 2018
  4. 03/23 object-store: allow read_object_file_extended to read from any repoStefan Beller, Dec 15, 2018
  5. 04/23 object-store: prepare read_object_file to deal with any repoStefan Beller, Dec 15, 2018
  6. 05/23 object-store: prepare has_{sha1, object}_file to handle any repoStefan Beller, Dec 15, 2018
  7. 06/23 object: parse_object to honor its repository argumentStefan Beller, Dec 15, 2018
  8. 07/23 commit: allow parse_commit* to handle any repoStefan Beller, Dec 15, 2018
  9. 08/23 commit-reach.c: allow paint_down_to_common to handle any repoStefan Beller, Dec 15, 2018
  10. 09/23 commit-reach.c: allow merge_bases_many to handle any repoStefan Beller, Dec 15, 2018
  11. 10/23 commit-reach.c: allow remove_redundant to handle any repoStefan Beller, Dec 15, 2018
  12. 11/23 commit-reach.c: allow get_merge_bases_many_0 to handle any repoStefan Beller, Dec 15, 2018
  13. 12/23 commit-reach: prepare get_merge_bases to handle any repoStefan Beller, Dec 15, 2018
  14. 13/23 commit-reach: prepare in_merge_bases[_many] to handle any repoStefan Beller, Dec 15, 2018
  15. 14/23 commit: prepare get_commit_buffer to handle any repoStefan Beller, Dec 15, 2018
  16. 15/23 commit: prepare repo_unuse_commit_buffer to handle any repoStefan Beller, Dec 15, 2018
  17. 16/23 commit: prepare logmsg_reencode to handle arbitrary repositoriesStefan Beller, Dec 15, 2018
  18. 17/23 pretty: prepare format_commit_message to handle arbitrary repositoriesStefan Beller, Dec 15, 2018
  19. 18/23 submodule: use submodule repos for object lookupStefan Beller, Dec 15, 2018
  20. 19/23 submodule: don't add submodule as odb for pushStefan Beller, Dec 15, 2018
  21. 20/23 commit-graph: convert remaining functions to handle any repoStefan Beller, Dec 15, 2018
  22. 21/23 commit: prepare free_commit_buffer and release_commit_memory for any repoStefan Beller, Dec 15, 2018
  23. 22/23 path.h: make REPO_GIT_PATH_FUNC repository agnosticStefan Beller, Dec 15, 2018
  24. 23/23 t/helper/test-repository: celebrate independence from the_repositoryStefan Beller, Dec 15, 2018
  25. Derrick StoleeDec 27, 2018
  26. Junio C HamanoDec 26, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.