pack-write.c: extract 'write_rev_file_order'
commita587b5a7869e9a399d4de6edea0b3f32a3548639
authorTaylor Blau <me@ttaylorr.com>
Tue, 30 Mar 2021 15:04:29 +0000 (30 11:04 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 1 Apr 2021 20:07:37 +0000 (1 13:07 -0700)
tree09ee4e3b51517962644de579bb7dd1486dbab32a
parentf894081deae88e875536bd53c56b8b189474770c
pack-write.c: extract 'write_rev_file_order'

Existing callers provide the reverse index code with an array of 'struct
pack_idx_entry *'s, which is then sorted by pack order (comparing the
offsets of each object within the pack).

Prepare for the multi-pack index to write a .rev file by providing a way
to write the reverse index without an array of pack_idx_entry (which the
MIDX code does not have).

Instead, callers can invoke 'write_rev_index_positions()', which takes
an array of uint32_t's. The ith entry in this array specifies the ith
object's (in index order) position within the pack (in pack order).

Expose this new function for use in a later patch, and rewrite the
existing write_rev_file() in terms of this new function.

Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
pack-write.c
pack.h