Signed-off-by: Stefan Beller <sbeller@xxxxxxxxxx> --- blob.c | 2 +- builtin/fsck.c | 2 +- commit.c | 4 ++-- object.c | 2 +- object.h | 3 ++- refs.c | 2 +- tag.c | 2 +- tree.c | 2 +- 8 files changed, 10 insertions(+), 9 deletions(-) diff --git a/blob.c b/blob.c index 25faf3e692..0c53cfce45 100644 --- a/blob.c +++ b/blob.c @@ -10,7 +10,7 @@ struct blob *lookup_blob_the_repository(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_blob_node()); - return object_as_type(obj, OBJ_BLOB, 0); + return object_as_type(the_repository, obj, OBJ_BLOB, 0); } int parse_blob_buffer(struct blob *item, void *buffer, unsigned long size) diff --git a/builtin/fsck.c b/builtin/fsck.c index 527c03eb39..2e8b298384 100644 --- a/builtin/fsck.c +++ b/builtin/fsck.c @@ -72,7 +72,7 @@ static const char *printable_type(struct object *obj) enum object_type type = sha1_object_info(the_repository, obj->oid.hash, NULL); if (type > 0) - object_as_type(obj, type, 0); + object_as_type(the_repository, obj, type, 0); } ret = typename(obj->type); diff --git a/commit.c b/commit.c index 2fb702795c..953c537059 100644 --- a/commit.c +++ b/commit.c @@ -30,7 +30,7 @@ struct commit *lookup_commit_reference_gently_the_repository( if (!obj) return NULL; - return object_as_type(obj, OBJ_COMMIT, quiet); + return object_as_type(the_repository, obj, OBJ_COMMIT, quiet); } struct commit *lookup_commit_reference_the_repository(const struct object_id *oid) @@ -56,7 +56,7 @@ struct commit *lookup_commit_the_repository(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_commit_node()); - return object_as_type(obj, OBJ_COMMIT, 0); + return object_as_type(the_repository, obj, OBJ_COMMIT, 0); } struct commit *lookup_commit_reference_by_name(const char *name) diff --git a/object.c b/object.c index 28f536dcae..156fbae15e 100644 --- a/object.c +++ b/object.c @@ -155,7 +155,7 @@ void *create_object(struct repository *r, const unsigned char *sha1, void *o) return obj; } -void *object_as_type(struct object *obj, enum object_type type, int quiet) +void *object_as_type_the_repository(struct object *obj, enum object_type type, int quiet) { if (obj->type == type) return obj; diff --git a/object.h b/object.h index d676404f00..a61d965700 100644 --- a/object.h +++ b/object.h @@ -106,7 +106,8 @@ struct object *lookup_object(struct repository *r, const unsigned char *sha1); extern void *create_object(struct repository *r, const unsigned char *sha1, void *obj); -void *object_as_type(struct object *obj, enum object_type type, int quiet); +#define object_as_type(r, o, t, q) object_as_type_##r(o, t, q) +void *object_as_type_the_repository(struct object *obj, enum object_type type, int quiet); /* * Resolves 'sha1' to an object of the specified type and returns the diff --git a/refs.c b/refs.c index 0ea9b05d03..24fa57b0f1 100644 --- a/refs.c +++ b/refs.c @@ -304,7 +304,7 @@ enum peel_status peel_object(const struct object_id *name, struct object_id *oid if (o->type == OBJ_NONE) { int type = sha1_object_info(the_repository, name->hash, NULL); - if (type < 0 || !object_as_type(o, type, 0)) + if (type < 0 || !object_as_type(the_repository, o, type, 0)) return PEEL_INVALID; } diff --git a/tag.c b/tag.c index e2fd31ffc7..abba1b8d88 100644 --- a/tag.c +++ b/tag.c @@ -98,7 +98,7 @@ struct tag *lookup_tag_the_repository(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_tag_node()); - return object_as_type(obj, OBJ_TAG, 0); + return object_as_type(the_repository, obj, OBJ_TAG, 0); } static timestamp_t parse_tag_date(const char *buf, const char *tail) diff --git a/tree.c b/tree.c index f1c4e937c8..37fec8623b 100644 --- a/tree.c +++ b/tree.c @@ -200,7 +200,7 @@ struct tree *lookup_tree_the_repository(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_tree_node()); - return object_as_type(obj, OBJ_TREE, 0); + return object_as_type(the_repository, obj, OBJ_TREE, 0); } int parse_tree_buffer(struct tree *item, void *buffer, unsigned long size) -- 2.15.1.433.g936d1b9894.dirty