Add a repository argument to allow the register_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 | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/replace-object.c b/replace-object.c
index 52fc59c4f7..e9aa964978 100644
--- a/replace-object.c
+++ b/replace-object.c
@@ -21,8 +21,10 @@ static int replace_object_pos_the_repository(const unsigned 
char *sha1)
                        replace_sha1_access);
 }
 
-static int register_replace_object(struct replace_object *replace,
-                                  int ignore_dups)
+#define register_replace_object(r, rp, i) \
+       register_replace_object_##r(rp, i)
+static int register_replace_object_the_repository(struct replace_object 
*replace,
+                                                 int ignore_dups)
 {
        int pos = replace_object_pos(the_repository, replace->original);
 
@@ -67,7 +69,7 @@ static int register_replace_ref(const char *refname,
        hashcpy(repl_obj->replacement, oid->hash);
 
        /* Register new object */
-       if (register_replace_object(repl_obj, 1))
+       if (register_replace_object(the_repository, repl_obj, 1))
                die("duplicate replace ref: %s", refname);
 
        return 0;
-- 
2.17.0.484.g0c8726318c-goog

Reply via email to