@@ -1147,7 +1147,7 @@ static void create_object_entry(const struct object_id *oid,
{
struct object_entry *entry;
- entry = packlist_alloc(&to_pack, oid->hash, index_pos);
+ entry = packlist_alloc(&to_pack, oid, index_pos);
entry->hash = hash;
oe_set_type(entry, type);
if (exclude)
@@ -153,7 +153,7 @@ void prepare_packing_data(struct repository *r, struct packing_data *pdata)
}
struct object_entry *packlist_alloc(struct packing_data *pdata,
- const unsigned char *sha1,
+ const struct object_id *oid,
uint32_t index_pos)
{
struct object_entry *new_entry;
@@ -177,7 +177,7 @@ struct object_entry *packlist_alloc(struct packing_data *pdata,
new_entry = pdata->objects + pdata->nr_objects++;
memset(new_entry, 0, sizeof(*new_entry));
- hashcpy(new_entry->idx.oid.hash, sha1);
+ oidcpy(&new_entry->idx.oid, oid);
if (pdata->index_size * 3 <= pdata->nr_objects * 4)
rehash_objects(pdata);
@@ -183,7 +183,7 @@ static inline void packing_data_unlock(struct packing_data *pdata)
}
struct object_entry *packlist_alloc(struct packing_data *pdata,
- const unsigned char *sha1,
+ const struct object_id *oid,
uint32_t index_pos);
struct object_entry *packlist_find(struct packing_data *pdata,
The only caller of packlist_alloc() already has a "struct object_id", and we immediately copy the hash they pass us into our own object_id. Let's avoid the unnecessary round-trip to a raw sha1 pointer. Signed-off-by: Jeff King <peff@peff.net> --- Just noticed since I was touching that function. This is the second-to-last raw sha1 in pack-objects.c. The final one is slightly tricky to get rid of, because it comes from the raw base_ref pointer we parse out of the packfile's mmap. I left it out of this series, but I wouldn't mind if somebody wants to take a stab at it. builtin/pack-objects.c | 2 +- pack-objects.c | 4 ++-- pack-objects.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-)