[RFC PATCH 07/14] midx: expose `midx_layer_contains_pack()`
- From
Taylor Blau <me@ttaylorr.com>
- Date
- Feb 25, 2026, 00:21 UTC
- Message-ID
- <aba9ad5174aec361f019eb44da87b04ec9b92679.1771978829.git.me@ttaylorr.com>
- In-Reply-To
- <cover.1771978829.git.me@ttaylorr.com>
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> --- midx.c | 6 +++--- midx.h | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/midx.c b/midx.c index 20732c256a6..709fe7c3fd7 100644 --- a/midx.c +++ b/midx.c @@ -665,8 +665,8 @@ static int midx_pack_names_cmp(const void *a, const void *b, void *m_) m->pack_names[*(const size_t *)b]); } -static int midx_contains_pack_1(struct multi_pack_index *m, - const char *idx_or_pack_name) +int midx_layer_contains_pack(struct multi_pack_index *m, + const char *idx_or_pack_name) { uint32_t first = 0, last = m->num_packs; @@ -707,7 +707,7 @@ static int midx_contains_pack_1(struct multi_pack_index *m, int midx_contains_pack(struct multi_pack_index *m, const char *idx_or_pack_name) { for (; m; m = m->base_midx) - if (midx_contains_pack_1(m, idx_or_pack_name)) + if (midx_layer_contains_pack(m, idx_or_pack_name)) return 1; return 0; } diff --git a/midx.h b/midx.h index e4a75ff2bef..f211a38b9e7 100644 --- a/midx.h +++ b/midx.h @@ -119,6 +119,8 @@ struct object_id *nth_midxed_object_oid(struct object_id *oid, int fill_midx_entry(struct multi_pack_index *m, const struct object_id *oid, struct pack_entry *e); int midx_contains_pack(struct multi_pack_index *m, const char *idx_or_pack_name); +int midx_layer_contains_pack(struct multi_pack_index *m, + const char *idx_or_pack_name); int midx_preferred_pack(struct multi_pack_index *m, uint32_t *pack_int_id); int prepare_multi_pack_index_one(struct odb_source *source);
-- 2.53.0.185.g29bc4dff628