write_reused_pack_one(): convert to new revindex API
Replace direct revindex accesses with calls to 'pack_pos_to_offset()' and 'pack_pos_to_index()'. Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
952fc6870d
commit
66cbd3e2fb
@ -868,8 +868,8 @@ static void write_reused_pack_one(size_t pos, struct hashfile *out,
|
|||||||
enum object_type type;
|
enum object_type type;
|
||||||
unsigned long size;
|
unsigned long size;
|
||||||
|
|
||||||
offset = reuse_packfile->revindex[pos].offset;
|
offset = pack_pos_to_offset(reuse_packfile, pos);
|
||||||
next = reuse_packfile->revindex[pos + 1].offset;
|
next = pack_pos_to_offset(reuse_packfile, pos + 1);
|
||||||
|
|
||||||
record_reused_object(offset, offset - hashfile_total(out));
|
record_reused_object(offset, offset - hashfile_total(out));
|
||||||
|
|
||||||
@ -889,11 +889,17 @@ static void write_reused_pack_one(size_t pos, struct hashfile *out,
|
|||||||
|
|
||||||
/* Convert to REF_DELTA if we must... */
|
/* Convert to REF_DELTA if we must... */
|
||||||
if (!allow_ofs_delta) {
|
if (!allow_ofs_delta) {
|
||||||
int base_pos = find_revindex_position(reuse_packfile, base_offset);
|
uint32_t base_pos;
|
||||||
struct object_id base_oid;
|
struct object_id base_oid;
|
||||||
|
|
||||||
|
if (offset_to_pack_pos(reuse_packfile, base_offset, &base_pos) < 0)
|
||||||
|
die(_("expected object at offset %"PRIuMAX" "
|
||||||
|
"in pack %s"),
|
||||||
|
(uintmax_t)base_offset,
|
||||||
|
reuse_packfile->pack_name);
|
||||||
|
|
||||||
nth_packed_object_id(&base_oid, reuse_packfile,
|
nth_packed_object_id(&base_oid, reuse_packfile,
|
||||||
reuse_packfile->revindex[base_pos].nr);
|
pack_pos_to_index(reuse_packfile, base_pos));
|
||||||
|
|
||||||
len = encode_in_pack_object_header(header, sizeof(header),
|
len = encode_in_pack_object_header(header, sizeof(header),
|
||||||
OBJ_REF_DELTA, size);
|
OBJ_REF_DELTA, size);
|
||||||
|
Loading…
Reference in New Issue
Block a user