pack-bitmap: load writer config from repository parameter

In bitmap_writer_init(), we take a repository parameter but ever look at it. Most of the initialization here is independent of the repository, but we do load some config. So let's pass the repo we get down to load_pseudo_merges_from_config(), which in turn can use repo_config(), rather than depending on the_repository via git_config(). The outcome is the same, since all callers pass in the_repository anyway. But it takes us a step closer to getting rid of the global, and as a bonus it silences an unused parameter warning. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jeff King committed Aug 17, 2024 at 03:26 UTC ecc6fa9ae964daf333f5e64cdff6f5232139f440
3 files changed +6 -4
pack-bitmap-write.c
+1 -1
@@ -51,7 +51,7 @@ void bitmap_writer_init(struct bitmap_writer *writer, struct repository *r)
51
52 string_list_init_dup(&writer->pseudo_merge_groups);
53
54 - load_pseudo_merges_from_config(&writer->pseudo_merge_groups);
54 + load_pseudo_merges_from_config(r, &writer->pseudo_merge_groups);
55 }
56
57 static void free_pseudo_merge_commit_idx(struct pseudo_merge_commit_idx *idx)
pseudo-merge.c
+3 -2
@@ -183,11 +183,12 @@ done:
183 return ret;
184 }
185
186 -void load_pseudo_merges_from_config(struct string_list *list)
186 +void load_pseudo_merges_from_config(struct repository *r,
187 + struct string_list *list)
188 {
189 struct string_list_item *item;
190
190 - git_config(pseudo_merge_config, list);
191 + repo_config(r, pseudo_merge_config, list);
192
193 for_each_string_list_item(item, list) {
194 struct pseudo_merge_group *group = item->util;
pseudo-merge.h
+2 -1
@@ -10,6 +10,7 @@ struct commit;
10 struct string_list;
11 struct bitmap_index;
12 struct bitmap_writer;
13 +struct repository;
14
15 /*
16 * A pseudo-merge group tracks the set of non-bitmapped reference tips
@@ -72,7 +73,7 @@ struct pseudo_merge_matches {
73 * entry keys are the pseudo-merge group names, and the values are
74 * pointers to the pseudo_merge_group structure itself.
75 */
75 -void load_pseudo_merges_from_config(struct string_list *list);
76 +void load_pseudo_merges_from_config(struct repository *r, struct string_list *list);
77
78 /*
79 * A pseudo-merge commit index (pseudo_merge_commit_idx) maps a