From a93c141ddef25dc999fff73c590b42d3af606ff3 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Sun, 23 Feb 2020 23:30:07 -0500 Subject: pack-objects: convert oe_set_delta_ext() to use object_id We already store an object_id internally, and now our sole caller also has one. Let's stop passing around the internal hash array, which adds a bit of type safety. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c index 8692ab3..44f44fc 100644 --- a/builtin/pack-objects.c +++ b/builtin/pack-objects.c @@ -1756,7 +1756,7 @@ static void check_object(struct object_entry *entry) entry->delta_sibling_idx = base_entry->delta_child_idx; SET_DELTA_CHILD(base_entry, entry); } else { - SET_DELTA_EXT(entry, base_ref.hash); + SET_DELTA_EXT(entry, &base_ref); } unuse_pack(&w_curs); diff --git a/pack-objects.c b/pack-objects.c index 5e5a3c6..f2a4338 100644 --- a/pack-objects.c +++ b/pack-objects.c @@ -203,14 +203,14 @@ struct object_entry *packlist_alloc(struct packing_data *pdata, void oe_set_delta_ext(struct packing_data *pdata, struct object_entry *delta, - const unsigned char *sha1) + const struct object_id *oid) { struct object_entry *base; ALLOC_GROW(pdata->ext_bases, pdata->nr_ext + 1, pdata->alloc_ext); base = &pdata->ext_bases[pdata->nr_ext++]; memset(base, 0, sizeof(*base)); - hashcpy(base->idx.oid.hash, sha1); + oidcpy(&base->idx.oid, oid); /* These flags mark that we are not part of the actual pack output. */ base->preferred_base = 1; diff --git a/pack-objects.h b/pack-objects.h index d3975e0..9d88e3e 100644 --- a/pack-objects.h +++ b/pack-objects.h @@ -292,7 +292,7 @@ static inline void oe_set_delta(struct packing_data *pack, void oe_set_delta_ext(struct packing_data *pack, struct object_entry *e, - const unsigned char *sha1); + const struct object_id *oid); static inline struct object_entry *oe_delta_child( const struct packing_data *pack, -- cgit v0.10.2-6-g49f6