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 75b737a761e..dada295698c 100644 --- a/blob.c +++ b/blob.c @@ -11,7 +11,7 @@ struct blob *lookup_blob(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_blob_node(the_repository)); - 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 09cf5333444..a906fe4a82b 100644 --- a/builtin/fsck.c +++ b/builtin/fsck.c @@ -70,7 +70,7 @@ static const char *printable_type(struct object *obj) enum object_type type = oid_object_info(the_repository, &obj->oid, NULL); if (type > 0) - object_as_type(obj, type, 0); + object_as_type(the_repository, obj, type, 0); } ret = type_name(obj->type); diff --git a/commit.c b/commit.c index b4dbfd889a3..0d55600e643 100644 --- a/commit.c +++ b/commit.c @@ -32,7 +32,7 @@ struct commit *lookup_commit_reference_gently(const struct object_id *oid, 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(const struct object_id *oid) @@ -58,7 +58,7 @@ struct commit *lookup_commit(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_commit_node(the_repository)); - 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 49719694c14..404919043d4 100644 --- a/object.c +++ b/object.c @@ -158,7 +158,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 2ba23c07a72..3faa89578fc 100644 --- a/object.h +++ b/object.h @@ -114,7 +114,8 @@ struct object *lookup_object_the_repository(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); /* * Returns the object, having parsed it to find out what it is. diff --git a/refs.c b/refs.c index 3b4508a97aa..fcfd3171e83 100644 --- a/refs.c +++ b/refs.c @@ -305,7 +305,7 @@ enum peel_status peel_object(const struct object_id *name, struct object_id *oid if (o->type == OBJ_NONE) { int type = oid_object_info(the_repository, name, 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 1b95eb9f07f..a14a4f23037 100644 --- a/tag.c +++ b/tag.c @@ -98,7 +98,7 @@ struct tag *lookup_tag(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_tag_node(the_repository)); - 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 73e8a8a948d..f31afb81be0 100644 --- a/tree.c +++ b/tree.c @@ -201,7 +201,7 @@ struct tree *lookup_tree(const struct object_id *oid) if (!obj) return create_object(the_repository, oid->hash, alloc_tree_node(the_repository)); - 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.18.0.399.gad0ab374a1-goog