diff options
| author | Taylor Blau <me@ttaylorr.com> | 2025-03-20 13:56:37 -0400 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2025-03-21 04:33:41 -0700 |
| commit | ae61324f0a6124534a245b70d55d63b5abf3e5d4 (patch) | |
| tree | 32ed725d6a382ceb6d8f40bbe678519664ff4aec /t/unit-tests | |
| parent | f31a17cea5f6f66436e20f5dcefb6a0464238864 (diff) | |
pack-bitmap.c: teach `bitmap_for_commit()` about incremental MIDXs
The pack-bitmap machinery uses `bitmap_for_commit()` to locate the
EWAH-compressed bitmap corresponding to some given commit object.
Teach this function about incremental MIDX bitmaps by teaching it to
recur on earlier bitmap layers when it fails to find a given commit in
the current layer.
The changes to do so are as follows:
- Avoid initializing hash_pos at its declaration, since
bitmap_for_commit() is now a recursive function and may receive a
NULL bitmap_index pointer as its first argument.
- In cases where we would previously return NULL (to indicate that a
lookup failed and the given bitmap_index does not contain an entry
corresponding to the given commit), recursively call the function on
the previous bitmap layer.
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Acked-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/unit-tests')
0 files changed, 0 insertions, 0 deletions
