midx: expose `midx_layer_contains_pack()`

Rename the function `midx_contains_pack_1()` to instead be called `midx_layer_contains_pack()` and make it accessible. Unlike `midx_contains_pack()` (which recurses through the entire chain), this function checks only a single MIDX layer. This will be used by a subsequent commit to determine whether a given pack belongs to the tip MIDX layer specifically, rather than to any layer in the chain. No functional changes are present in this commit. Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Taylor Blau committed May 19, 2026 at 11:58 UTC ee6fb5823822bb03bd8dc5b7e7645e5b319033f0
2 files changed +5 -3
midx.c
+3 -3
@@ -667,8 +667,8 @@ static int midx_pack_names_cmp(const void *a, const void *b, void *m_)
667 m->pack_names[*(const size_t *)b]);
668 }
669
670 -static int midx_contains_pack_1(struct multi_pack_index *m,
671 - const char *idx_or_pack_name)
670 +int midx_layer_contains_pack(struct multi_pack_index *m,
671 + const char *idx_or_pack_name)
672 {
673 uint32_t first = 0, last = m->num_packs;
674
@@ -709,7 +709,7 @@ static int midx_contains_pack_1(struct multi_pack_index *m,
709 int midx_contains_pack(struct multi_pack_index *m, const char *idx_or_pack_name)
710 {
711 for (; m; m = m->base_midx)
712 - if (midx_contains_pack_1(m, idx_or_pack_name))
712 + if (midx_layer_contains_pack(m, idx_or_pack_name))
713 return 1;
714 return 0;
715 }
midx.h
+2
@@ -119,6 +119,8 @@ struct object_id *nth_midxed_object_oid(struct object_id *oid,
119 int fill_midx_entry(struct multi_pack_index *m, const struct object_id *oid, struct pack_entry *e);
120 int midx_contains_pack(struct multi_pack_index *m,
121 const char *idx_or_pack_name);
122 +int midx_layer_contains_pack(struct multi_pack_index *m,
123 + const char *idx_or_pack_name);
124 int midx_preferred_pack(struct multi_pack_index *m, uint32_t *pack_int_id);
125 int prepare_multi_pack_index_one(struct odb_source *source);
126