Signed-off-by: Stefan Beller <[email protected]>
---
object-store.h | 3 +--
sha1_file.c | 21 +++++++++++----------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/object-store.h b/object-store.h
index d96a16edd1..add1d4e27c 100644
--- a/object-store.h
+++ b/object-store.h
@@ -61,7 +61,6 @@ struct packed_git {
char pack_name[FLEX_ARRAY]; /* more */
};
-#define prepare_alt_odb(r) prepare_alt_odb_##r()
-extern void prepare_alt_odb_the_repository(void);
+void prepare_alt_odb(struct repository *r);
#endif /* OBJECT_STORE_H */
diff --git a/sha1_file.c b/sha1_file.c
index d18ce3aeba..f046d560f8 100644
--- a/sha1_file.c
+++ b/sha1_file.c
@@ -677,21 +677,22 @@ int foreach_alt_odb(alt_odb_fn fn, void *cb)
return r;
}
-void prepare_alt_odb_the_repository(void)
+void prepare_alt_odb(struct repository *r)
{
- const char *alt;
-
- if (the_repository->objects.alt_odb_tail)
+ if (r->objects.alt_odb_tail)
return;
- alt = getenv(ALTERNATE_DB_ENVIRONMENT);
+ r->objects.alt_odb_tail = &r->objects.alt_odb_list;
+
+ if (!r->ignore_env) {
+ const char *alt = getenv(ALTERNATE_DB_ENVIRONMENT);
+ if (!alt)
+ alt = "";
- the_repository->objects.alt_odb_tail =
- &the_repository->objects.alt_odb_list;
- link_alt_odb_entries(the_repository, alt,
- PATH_SEP, NULL, 0);
+ link_alt_odb_entries(r, alt, PATH_SEP, NULL, 0);
+ }
- read_info_alternates(the_repository, get_object_directory(), 0);
+ read_info_alternates(r, r->objects.objectdir, 0);
}
/* Returns 1 if we have successfully freshened the file, 0 otherwise. */
--
2.16.1.73.ga2c3e9663f.dirty