Skip to content

Commit 66cbd3e

Browse files
ttaylorrgitster
authored andcommitted
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 <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 952fc68 commit 66cbd3e

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

builtin/pack-objects.c

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -868,8 +868,8 @@ static void write_reused_pack_one(size_t pos, struct hashfile *out,
868868
enum object_type type;
869869
unsigned long size;
870870

871-
offset = reuse_packfile->revindex[pos].offset;
872-
next = reuse_packfile->revindex[pos + 1].offset;
871+
offset = pack_pos_to_offset(reuse_packfile, pos);
872+
next = pack_pos_to_offset(reuse_packfile, pos + 1);
873873

874874
record_reused_object(offset, offset - hashfile_total(out));
875875

@@ -889,11 +889,17 @@ static void write_reused_pack_one(size_t pos, struct hashfile *out,
889889

890890
/* Convert to REF_DELTA if we must... */
891891
if (!allow_ofs_delta) {
892-
int base_pos = find_revindex_position(reuse_packfile, base_offset);
892+
uint32_t base_pos;
893893
struct object_id base_oid;
894894

895+
if (offset_to_pack_pos(reuse_packfile, base_offset, &base_pos) < 0)
896+
die(_("expected object at offset %"PRIuMAX" "
897+
"in pack %s"),
898+
(uintmax_t)base_offset,
899+
reuse_packfile->pack_name);
900+
895901
nth_packed_object_id(&base_oid, reuse_packfile,
896-
reuse_packfile->revindex[base_pos].nr);
902+
pack_pos_to_index(reuse_packfile, base_pos));
897903

898904
len = encode_in_pack_object_header(header, sizeof(header),
899905
OBJ_REF_DELTA, size);

0 commit comments

Comments
 (0)