Add a repository argument to allow the prepare_replace_object caller
to be more specific about which repository to handle. This is a small
mechanical change; it doesn't change the implementation to handle
repositories other than the_repository yet.

As with the previous commits, use a macro to catch callers passing a
repository other than the_repository at compile time.

Signed-off-by: Jonathan Nieder <jrnie...@gmail.com>
Signed-off-by: Stefan Beller <sbel...@google.com>
---
 replace-object.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/replace-object.c b/replace-object.c
index e9aa964978..3a3d971732 100644
--- a/replace-object.c
+++ b/replace-object.c
@@ -75,7 +75,9 @@ static int register_replace_ref(const char *refname,
        return 0;
 }
 
-static void prepare_replace_object(void)
+#define prepare_replace_object(r) \
+       prepare_replace_object_##r()
+static void prepare_replace_object_the_repository(void)
 {
        if (the_repository->objects->replacements.prepared)
                return;
@@ -99,7 +101,7 @@ const unsigned char *do_lookup_replace_object(const unsigned 
char *sha1)
        int pos, depth = MAXREPLACEDEPTH;
        const unsigned char *cur = sha1;
 
-       prepare_replace_object();
+       prepare_replace_object(the_repository);
 
        /* Try to recursively replace the object */
        do {
-- 
2.17.0.484.g0c8726318c-goog

Reply via email to