From: Taylor Blau Date: Thu, 20 Mar 2025 17:56:56 +0000 (-0400) Subject: pack-bitmap.c: apply pseudo-merge commits with incremental MIDXs X-Git-Tag: v2.50.0-rc0~135^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e2837e29e62805502ad17ea3b1eae941f8963625;p=thirdparty%2Fgit.git pack-bitmap.c: apply pseudo-merge commits with incremental MIDXs Prepare for using pseudo-merges with incremental MIDX bitmaps by attempting to apply pseudo-merges from each layer when encountering a given commit during a walk. Signed-off-by: Taylor Blau Acked-by: Elijah Newren Signed-off-by: Junio C Hamano --- diff --git a/pack-bitmap.c b/pack-bitmap.c index 4086277de8..1d1e1a65ca 100644 --- a/pack-bitmap.c +++ b/pack-bitmap.c @@ -1082,10 +1082,15 @@ static unsigned apply_pseudo_merges_for_commit_1(struct bitmap_index *bitmap_git struct commit *commit, uint32_t commit_pos) { - int ret; + struct bitmap_index *curr = bitmap_git; + int ret = 0; - ret = apply_pseudo_merges_for_commit(&bitmap_git->pseudo_merges, - result, commit, commit_pos); + while (curr) { + ret += apply_pseudo_merges_for_commit(&curr->pseudo_merges, + result, commit, + commit_pos); + curr = curr->base; + } if (ret) pseudo_merges_satisfied_nr += ret;