]> git.ipfire.org Git - thirdparty/git.git/commitdiff
builtin/repack.c: avoid using `hash_to_hex()` in pack geometry
authorTaylor Blau <me@ttaylorr.com>
Wed, 15 Oct 2025 22:27:50 +0000 (18:27 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 16 Oct 2025 17:08:53 +0000 (10:08 -0700)
In previous commits, we started passing either repository or
git_hash_algo pointers around to various spots within builtin/repack.c
to reduce our dependency on the_repository in the hope of undef'ing
USE_THE_REPOSITORY_VARIABLE.

This commit takes us as far as we can (easily) go in that direction by
removing the only use of a convenience function that only exists when
USE_THE_REPOSITORY_VARIABLE is defined.

Unfortunately, the only other such function is "is_bare_repository()",
which is less than straightforward to convert into, say,
"repo_is_bare()", the latter of the two accepting a repository pointer.

Punt on that for now, and declare this commit as the stopping point for
our efforts in the direction of undef'ing USE_THE_REPOSITORY_VARIABLE.

Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/repack.c

index a043704aa83c20b11c40437d1a1e74a4c90894de..0d35f15b4b19c1fa74b312c2e0f810e40f2e8d94 100644 (file)
@@ -683,12 +683,14 @@ static void geometry_remove_redundant_packs(struct pack_geometry *geometry,
                                            struct string_list *names,
                                            struct existing_packs *existing)
 {
+       const struct git_hash_algo *algop = existing->repo->hash_algo;
        struct strbuf buf = STRBUF_INIT;
        uint32_t i;
 
        for (i = 0; i < geometry->split; i++) {
                struct packed_git *p = geometry->pack[i];
-               if (string_list_has_string(names, hash_to_hex(p->hash)))
+               if (string_list_has_string(names, hash_to_hex_algop(p->hash,
+                                                                   algop)))
                        continue;
 
                strbuf_reset(&buf);