path: root/packfile.h
diff options
authorJunio C Hamano <>2020-02-14 20:54:19 (GMT)
committerJunio C Hamano <>2020-02-14 20:54:19 (GMT)
commita14aebeac330e6d58f9628a02521ea780daf0a5b (patch)
tree930def7948667c23b7a252fec9a9b26a3a834828 /packfile.h
parentdaef1b300b07c3d17d47c3bf01ebde28b62ff3fe (diff)
parentd2ea031046e8b10c2fd8120996db2dd542b30764 (diff)
Merge branch 'jk/packfile-reuse-cleanup'
The way "git pack-objects" reuses objects stored in existing pack to generate its result has been improved. * jk/packfile-reuse-cleanup: pack-bitmap: don't rely on bitmap_git->reuse_objects pack-objects: add checks for duplicate objects pack-objects: improve partial packfile reuse builtin/pack-objects: introduce obj_is_packed() pack-objects: introduce pack.allowPackReuse csum-file: introduce hashfile_total() pack-bitmap: simplify bitmap_has_oid_in_uninteresting() pack-bitmap: uninteresting oid can be outside bitmapped packfile pack-bitmap: introduce bitmap_walk_contains() ewah/bitmap: introduce bitmap_word_alloc() packfile: expose get_delta_base() builtin/pack-objects: report reused packfile objects
Diffstat (limited to 'packfile.h')
1 files changed, 3 insertions, 0 deletions
diff --git a/packfile.h b/packfile.h
index fc7904e..ec536a4 100644
--- a/packfile.h
+++ b/packfile.h
@@ -151,6 +151,9 @@ void *unpack_entry(struct repository *r, struct packed_git *, off_t, enum object
unsigned long unpack_object_header_buffer(const unsigned char *buf, unsigned long len, enum object_type *type, unsigned long *sizep);
unsigned long get_size_from_delta(struct packed_git *, struct pack_window **, off_t);
int unpack_object_header(struct packed_git *, struct pack_window **, off_t *, unsigned long *);
+off_t get_delta_base(struct packed_git *p, struct pack_window **w_curs,
+ off_t *curpos, enum object_type type,
+ off_t delta_obj_offset);
void release_pack_memory(size_t);