summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Beller <sbeller@google.com>2018-03-23 17:21:06 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-03-26 17:05:55 (GMT)
commit93d8d1e29d635741cc1a95c337d2a51dee0dcdf1 (patch)
tree749bac2b907d76092a5af380167b464839da3691
parentca5e6d26400af12cd938d468f2c21a1c895b612f (diff)
downloadgit-93d8d1e29d635741cc1a95c337d2a51dee0dcdf1.zip
git-93d8d1e29d635741cc1a95c337d2a51dee0dcdf1.tar.gz
git-93d8d1e29d635741cc1a95c337d2a51dee0dcdf1.tar.bz2
sha1_file: add repository argument to link_alt_odb_entries
See previous patch for explanation. Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--sha1_file.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/sha1_file.c b/sha1_file.c
index 81ad2a8..ba4fc91 100644
--- a/sha1_file.c
+++ b/sha1_file.c
@@ -468,8 +468,12 @@ static const char *parse_alt_odb_entry(const char *string,
return end;
}
-static void link_alt_odb_entries(const char *alt, int sep,
- const char *relative_base, int depth)
+#define link_alt_odb_entries(r, a, s, rb, d) \
+ link_alt_odb_entries_##r(a, s, rb, d)
+static void link_alt_odb_entries_the_repository(const char *alt,
+ int sep,
+ const char *relative_base,
+ int depth)
{
struct strbuf objdirbuf = STRBUF_INIT;
struct strbuf entry = STRBUF_INIT;
@@ -512,7 +516,7 @@ static void read_info_alternates_the_repository(const char *relative_base,
return;
}
- link_alt_odb_entries(buf.buf, '\n', relative_base, depth);
+ link_alt_odb_entries(the_repository, buf.buf, '\n', relative_base, depth);
strbuf_release(&buf);
free(path);
}
@@ -566,7 +570,8 @@ void add_to_alternates_file(const char *reference)
if (commit_lock_file(&lock))
die_errno("unable to move new alternates file into place");
if (the_repository->objects->alt_odb_tail)
- link_alt_odb_entries(reference, '\n', NULL, 0);
+ link_alt_odb_entries(the_repository, reference,
+ '\n', NULL, 0);
}
free(alts);
}
@@ -579,7 +584,8 @@ void add_to_alternates_memory(const char *reference)
*/
prepare_alt_odb();
- link_alt_odb_entries(reference, '\n', NULL, 0);
+ link_alt_odb_entries(the_repository, reference,
+ '\n', NULL, 0);
}
/*
@@ -678,7 +684,8 @@ void prepare_alt_odb(void)
the_repository->objects->alt_odb_tail =
&the_repository->objects->alt_odb_list;
- link_alt_odb_entries(the_repository->objects->alternate_db,
+ link_alt_odb_entries(the_repository,
+ the_repository->objects->alternate_db,
PATH_SEP, NULL, 0);
read_info_alternates(the_repository, get_object_directory(), 0);