git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/5] refs: stop using `the_repository`

From
Patrick Steinhardt <ps@pks.im>
Date
Jul 30, 2024, 05:22 UTC
Message-ID
<482a06560a6e6aa27469b355e8c81034a8867a40.1722316795.git.ps@pks.im>
In-Reply-To
<cover.1722316795.git.ps@pks.im>

Convert "refs.c" to stop using `the_repository` in favor of the repo that gets passed in via `struct ref_store`.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
---
 refs.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/refs.c b/refs.c
index 915aeb4d1d..94a41934d6 100644
--- a/refs.c
+++ b/refs.c
@@ -2,8 +2,6 @@
  * The backend-independent part of the reference module.
  */
 
-#define USE_THE_REPOSITORY_VARIABLE
-
 #include "git-compat-util.h"
 #include "advice.h"
 #include "config.h"
@@ -1838,7 +1836,7 @@ const char *refs_resolve_ref_unsafe(struct ref_store *refs,
 			    failure_errno != ENOTDIR)
 				return NULL;
 
-			oidclr(oid, the_repository->hash_algo);
+			oidclr(oid, refs->repo->hash_algo);
 			if (*flags & REF_BAD_NAME)
 				*flags |= REF_ISBROKEN;
 			return refname;
@@ -1848,7 +1846,7 @@ const char *refs_resolve_ref_unsafe(struct ref_store *refs,
 
 		if (!(read_flags & REF_ISSYMREF)) {
 			if (*flags & REF_BAD_NAME) {
-				oidclr(oid, the_repository->hash_algo);
+				oidclr(oid, refs->repo->hash_algo);
 				*flags |= REF_ISBROKEN;
 			}
 			return refname;
@@ -1856,7 +1854,7 @@ const char *refs_resolve_ref_unsafe(struct ref_store *refs,
 
 		refname = sb_refname.buf;
 		if (resolve_flags & RESOLVE_REF_NO_RECURSE) {
-			oidclr(oid, the_repository->hash_algo);
+			oidclr(oid, refs->repo->hash_algo);
 			return refname;
 		}
 		if (check_refname_format(refname, REFNAME_ALLOW_ONELEVEL)) {
@@ -2011,7 +2009,7 @@ struct ref_store *repo_get_submodule_ref_store(struct repository *repo,
 		free(subrepo);
 		goto done;
 	}
-	refs = ref_store_init(subrepo, the_repository->ref_storage_format,
+	refs = ref_store_init(subrepo, repo->ref_storage_format,
 			      submodule_sb.buf,
 			      REF_STORE_READ | REF_STORE_ODB);
 	register_ref_store_map(&repo->submodule_ref_stores, "submodule",
@@ -2045,7 +2043,7 @@ struct ref_store *get_worktree_ref_store(const struct worktree *wt)
 				      common_path.buf, REF_STORE_ALL_CAPS);
 		strbuf_release(&common_path);
 	} else {
-		refs = ref_store_init(wt->repo, the_repository->ref_storage_format,
+		refs = ref_store_init(wt->repo, wt->repo->ref_storage_format,
 				      wt->repo->commondir, REF_STORE_ALL_CAPS);
 	}
 
-- 
2.46.0.rc1.dirty
Previous: Patrick SteinhardtNext: Patrick Steinhardt
Message 2 of 12 in “refs: stop using `the_repository`”
  1. 0/5 refs: stop using `the_repository`Patrick Steinhardt, Jul 30, 2024
  2. 1/5 refs: stop using `the_repository`Patrick Steinhardt, Jul 30, 2024
  3. 2/5 refs/files: stop using `the_repository` in `parse_loose_ref_contents()`Patrick Steinhardt, Jul 30, 2024
  4. 3/5 refs/files: stop using `the_repository`Patrick Steinhardt, Jul 30, 2024
  5. 4/5 refs/packed: stop using `the_repository`Patrick Steinhardt, Jul 30, 2024
  6. Karthik NayakJul 30, 2024
  7. Patrick SteinhardtJul 31, 2024
  8. 5/5 refs/reftable: stop using `the_repository`Patrick Steinhardt, Jul 30, 2024
  9. Karthik NayakJul 30, 2024
  10. Patrick SteinhardtJul 31, 2024
  11. James LiuJul 31, 2024
  12. Patrick SteinhardtJul 31, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.