From f58a6cb60222d32063437ae85859e6e7ac7ffc8e Mon Sep 17 00:00:00 2001 From: Stefan Beller Date: Thu, 28 Jun 2018 18:22:09 -0700 Subject: tree: allow lookup_tree to handle arbitrary repositories Signed-off-by: Stefan Beller Signed-off-by: Junio C Hamano diff --git a/tree.c b/tree.c index 45e89ff..78d440a 100644 --- a/tree.c +++ b/tree.c @@ -195,13 +195,13 @@ int read_tree(struct tree *tree, int stage, struct pathspec *match, return 0; } -struct tree *lookup_tree_the_repository(const struct object_id *oid) +struct tree *lookup_tree(struct repository *r, const struct object_id *oid) { - struct object *obj = lookup_object(the_repository, oid->hash); + struct object *obj = lookup_object(r, oid->hash); if (!obj) - return create_object(the_repository, oid->hash, - alloc_tree_node(the_repository)); - return object_as_type(the_repository, obj, OBJ_TREE, 0); + return create_object(r, oid->hash, + alloc_tree_node(r)); + return object_as_type(r, obj, OBJ_TREE, 0); } int parse_tree_buffer(struct tree *item, void *buffer, unsigned long size) diff --git a/tree.h b/tree.h index 2ea21ed..d4807dc 100644 --- a/tree.h +++ b/tree.h @@ -12,8 +12,7 @@ struct tree { unsigned long size; }; -#define lookup_tree(r, oid) lookup_tree_##r(oid) -struct tree *lookup_tree_the_repository(const struct object_id *oid); +struct tree *lookup_tree(struct repository *r, const struct object_id *oid); int parse_tree_buffer(struct tree *item, void *buffer, unsigned long size); -- cgit v0.10.2-6-g49f6