ref-filter: use "struct object_id" consistently
Internally we store a "struct object_id", and all of our callers have one to pass us. But we insist that they peel it to its bare-sha1 hash, which we then hashcpy() into place. Let's pass it around as an object_id, which future-proofs us for a post-sha1 world. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
468165c1d8
commit
53df97a29d
10
ref-filter.c
10
ref-filter.c
@ -1826,12 +1826,12 @@ static const struct object_id *match_points_at(struct oid_array *points_at,
|
||||
|
||||
/* Allocate space for a new ref_array_item and copy the objectname and flag to it */
|
||||
static struct ref_array_item *new_ref_array_item(const char *refname,
|
||||
const unsigned char *objectname,
|
||||
const struct object_id *oid,
|
||||
int flag)
|
||||
{
|
||||
struct ref_array_item *ref;
|
||||
FLEX_ALLOC_STR(ref, refname, refname);
|
||||
hashcpy(ref->objectname.hash, objectname);
|
||||
oidcpy(&ref->objectname, oid);
|
||||
ref->flag = flag;
|
||||
|
||||
return ref;
|
||||
@ -1927,7 +1927,7 @@ static int ref_filter_handler(const char *refname, const struct object_id *oid,
|
||||
* to do its job and the resulting list may yet to be pruned
|
||||
* by maxcount logic.
|
||||
*/
|
||||
ref = new_ref_array_item(refname, oid->hash, flag);
|
||||
ref = new_ref_array_item(refname, oid, flag);
|
||||
ref->commit = commit;
|
||||
|
||||
REALLOC_ARRAY(ref_cbdata->array->items, ref_cbdata->array->nr + 1);
|
||||
@ -2165,11 +2165,11 @@ void show_ref_array_item(struct ref_array_item *info,
|
||||
putchar('\n');
|
||||
}
|
||||
|
||||
void pretty_print_ref(const char *name, const unsigned char *sha1,
|
||||
void pretty_print_ref(const char *name, const struct object_id *oid,
|
||||
const struct ref_format *format)
|
||||
{
|
||||
struct ref_array_item *ref_item;
|
||||
ref_item = new_ref_array_item(name, sha1, 0);
|
||||
ref_item = new_ref_array_item(name, oid, 0);
|
||||
ref_item->kind = ref_kind_from_refname(name);
|
||||
show_ref_array_item(ref_item, format);
|
||||
free_array_item(ref_item);
|
||||
|
Reference in New Issue
Block a user