From f1cbd033e201a18c7175bc6509b48d6243e79739 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Thu, 5 Sep 2019 18:52:25 -0400 Subject: pack-objects: use object_id in packlist_alloc() 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 Signed-off-by: Junio C Hamano diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c index 76ce906..dc2a7e9 100644 --- a/builtin/pack-objects.c +++ b/builtin/pack-objects.c @@ -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) diff --git a/pack-objects.c b/pack-objects.c index 5256029..c1df08d 100644 --- a/pack-objects.c +++ b/pack-objects.c @@ -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); diff --git a/pack-objects.h b/pack-objects.h index 857d438..47bf7eb 100644 --- a/pack-objects.h +++ b/pack-objects.h @@ -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, -- cgit v0.10.2-6-g49f6