diff options
author | Jeff King <peff@peff.net> | 2019-12-18 12:25:39 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2020-01-23 10:51:50 -0800 |
commit | 40d18ff8c6b6977eaf8450dc4eeb866ece5298fc (patch) | |
tree | 9beea48f7024ff26c727872764a47ab144a14a2b | |
parent | ewah/bitmap: introduce bitmap_word_alloc() (diff) | |
download | tgif-40d18ff8c6b6977eaf8450dc4eeb866ece5298fc.tar.xz |
pack-bitmap: introduce bitmap_walk_contains()
We will use this helper function in a following commit to
tell us if an object is packed.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | pack-bitmap.c | 12 | ||||
-rw-r--r-- | pack-bitmap.h | 3 |
2 files changed, 15 insertions, 0 deletions
diff --git a/pack-bitmap.c b/pack-bitmap.c index ed2befaac6..8891797c00 100644 --- a/pack-bitmap.c +++ b/pack-bitmap.c @@ -832,6 +832,18 @@ int reuse_partial_packfile_from_bitmap(struct bitmap_index *bitmap_git, return 0; } +int bitmap_walk_contains(struct bitmap_index *bitmap_git, + struct bitmap *bitmap, const struct object_id *oid) +{ + int idx; + + if (!bitmap) + return 0; + + idx = bitmap_position(bitmap_git, oid); + return idx >= 0 && bitmap_get(bitmap, idx); +} + void traverse_bitmap_commit_list(struct bitmap_index *bitmap_git, show_reachable_fn show_reachable) { diff --git a/pack-bitmap.h b/pack-bitmap.h index 00de3ec8e4..5425767f0f 100644 --- a/pack-bitmap.h +++ b/pack-bitmap.h @@ -3,6 +3,7 @@ #include "ewah/ewok.h" #include "khash.h" +#include "pack.h" #include "pack-objects.h" struct commit; @@ -53,6 +54,8 @@ int reuse_partial_packfile_from_bitmap(struct bitmap_index *, int rebuild_existing_bitmaps(struct bitmap_index *, struct packing_data *mapping, kh_oid_map_t *reused_bitmaps, int show_progress); void free_bitmap_index(struct bitmap_index *); +int bitmap_walk_contains(struct bitmap_index *, + struct bitmap *bitmap, const struct object_id *oid); /* * After a traversal has been performed by prepare_bitmap_walk(), this can be |