From 5643557e63de2cd0b81297fe975b001fa5be2c0a Mon Sep 17 00:00:00 2001 From: Stefan Beller Date: Wed, 11 Apr 2018 17:21:17 -0700 Subject: [PATCH] replace-object: allow do_lookup_replace_object to handle arbitrary repositories Signed-off-by: Stefan Beller Signed-off-by: Junio C Hamano --- replace-object.h | 4 ++-- replace_object.c | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/replace-object.h b/replace-object.h index dff57bfa1e..f05354c861 100644 --- a/replace-object.h +++ b/replace-object.h @@ -14,8 +14,8 @@ struct replace_object { * This internal function is only declared here for the benefit of * lookup_replace_object(). Please do not call it directly. */ -#define do_lookup_replace_object(r, s) do_lookup_replace_object_##r(s) -extern const struct object_id *do_lookup_replace_object_the_repository(const struct object_id *oid); +extern const struct object_id *do_lookup_replace_object(struct repository *r, + const struct object_id *oid); /* * If object sha1 should be replaced, return the replacement object's diff --git a/replace_object.c b/replace_object.c index eae52c66f3..246b98cd4f 100644 --- a/replace_object.c +++ b/replace_object.c @@ -53,17 +53,18 @@ static void prepare_replace_object(struct repository *r) * permanently-allocated value. This function always respects replace * references, regardless of the value of check_replace_refs. */ -const struct object_id *do_lookup_replace_object_the_repository(const struct object_id *oid) +const struct object_id *do_lookup_replace_object(struct repository *r, + const struct object_id *oid) { int depth = MAXREPLACEDEPTH; const struct object_id *cur = oid; - prepare_replace_object(the_repository); + prepare_replace_object(r); /* Try to recursively replace the object */ while (depth-- > 0) { struct replace_object *repl_obj = - oidmap_get(the_repository->objects->replace_map, cur); + oidmap_get(r->objects->replace_map, cur); if (!repl_obj) return cur; cur = &repl_obj->replacement; -- 2.40.0