diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-07-19 09:54:51 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-07-19 09:54:51 -0700 |
commit | d907bf8ef327cd47433d4a4bb0a1bb4e96b6e340 (patch) | |
tree | 2475a33111f13c32a4e8540fb9d273bee0c5c601 /sha1_file.c | |
parent | 54dbc1f9e6451b6673835259ce8aa450489fc420 (diff) | |
parent | 3de89c9d4216d0fdc11bd1141c419ac4d0d35fed (diff) | |
download | git-d907bf8ef327cd47433d4a4bb0a1bb4e96b6e340.tar.gz |
Merge branch 'jc/index-pack'
* jc/index-pack:
verify-pack: use index-pack --verify
index-pack: show histogram when emulating "verify-pack -v"
index-pack: start learning to emulate "verify-pack -v"
index-pack: a miniscule refactor
index-pack --verify: read anomalous offsets from v2 idx file
write_idx_file: need_large_offset() helper function
index-pack: --verify
write_idx_file: introduce a struct to hold idx customization options
index-pack: group the delta-base array entries also by type
Conflicts:
builtin/verify-pack.c
cache.h
sha1_file.c
Diffstat (limited to 'sha1_file.c')
-rw-r--r-- | sha1_file.c | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/sha1_file.c b/sha1_file.c index a6aac70923..89d7e5eb57 100644 --- a/sha1_file.c +++ b/sha1_file.c @@ -1553,61 +1553,6 @@ int unpack_object_header(struct packed_git *p, return type; } -int packed_object_info_detail(struct packed_git *p, - off_t obj_offset, - unsigned long *size, - unsigned long *store_size, - unsigned int *delta_chain_length, - unsigned char *base_sha1) -{ - struct pack_window *w_curs = NULL; - off_t curpos; - unsigned long dummy; - unsigned char *next_sha1; - enum object_type type; - struct revindex_entry *revidx; - - *delta_chain_length = 0; - curpos = obj_offset; - type = unpack_object_header(p, &w_curs, &curpos, size); - - revidx = find_pack_revindex(p, obj_offset); - *store_size = revidx[1].offset - obj_offset; - - for (;;) { - switch (type) { - default: - die("pack %s contains unknown object type %d", - p->pack_name, type); - case OBJ_COMMIT: - case OBJ_TREE: - case OBJ_BLOB: - case OBJ_TAG: - unuse_pack(&w_curs); - return type; - case OBJ_OFS_DELTA: - obj_offset = get_delta_base(p, &w_curs, &curpos, type, obj_offset); - if (!obj_offset) - die("pack %s contains bad delta base reference of type %s", - p->pack_name, typename(type)); - if (*delta_chain_length == 0) { - revidx = find_pack_revindex(p, obj_offset); - hashcpy(base_sha1, nth_packed_object_sha1(p, revidx->nr)); - } - break; - case OBJ_REF_DELTA: - next_sha1 = use_pack(p, &w_curs, curpos, NULL); - if (*delta_chain_length == 0) - hashcpy(base_sha1, next_sha1); - obj_offset = find_pack_entry_one(next_sha1, p); - break; - } - (*delta_chain_length)++; - curpos = obj_offset; - type = unpack_object_header(p, &w_curs, &curpos, &dummy); - } -} - static int packed_object_info(struct packed_git *p, off_t obj_offset, unsigned long *sizep, int *rtype) { |