]> git.ipfire.org Git - thirdparty/git.git/commit
builtin/grep: simplify how we preload packs
authorPatrick Steinhardt <ps@pks.im>
Thu, 9 Oct 2025 08:01:37 +0000 (10:01 +0200)
committerJunio C Hamano <gitster@pobox.com>
Thu, 16 Oct 2025 21:42:39 +0000 (14:42 -0700)
commitfdebc5d4da055c281f27d2fe9b2022ebdd4171d4
tree63aa3f1c36d33461aa878a417d5d46daea8798eb
parent07fbf2be2fdaa3629c06b2d6021a24c903e7890c
builtin/grep: simplify how we preload packs

When using multiple threads in git-grep(1) we eagerly preload both the
gitmodules file as well as the packfiles so that the threads won't race
with one another to initialize these data structures.

For packfiles, this is done by calling `packfile_store_get_packs()`,
which first loads our packfiles and then returns a pointer to the first
such packfile. This pointer is ignored though, as all we really care
about is that `packfile_store_prepare()` was called.

Historically, that function was file-local to "packfile.c", but that
changed with 4188332569 (packfile: move `get_multi_pack_index()` into
"midx.c", 2025-09-02). We can thus simplify the code by calling that
function directly.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/grep.c