From: Patrick Steinhardt Date: Tue, 19 May 2026 09:52:18 +0000 (+0200) Subject: setup: stop using `the_repository` in `upgrade_repository_format()` X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=9cae7229c99bb606dcbe81b454bf19ada82769a4;p=thirdparty%2Fgit.git setup: stop using `the_repository` in `upgrade_repository_format()` Stop using `the_repository` in `upgrade_repository_format()` and instead accept the repository as a parameter. The injection of `the_repository` is thus bumped one level higher, where callers now pass it in explicitly. Signed-off-by: Patrick Steinhardt Signed-off-by: Junio C Hamano --- diff --git a/list-objects-filter-options.c b/list-objects-filter-options.c index cef67e5919..bc5d98f9e6 100644 --- a/list-objects-filter-options.c +++ b/list-objects-filter-options.c @@ -378,7 +378,7 @@ void partial_clone_register( */ return; } else { - if (upgrade_repository_format(1) < 0) + if (upgrade_repository_format(the_repository, 1) < 0) die(_("unable to upgrade repository format to support partial clone")); /* Add promisor config for the remote */ diff --git a/repository.h b/repository.h index d391aff8ab..c3ec0f4b79 100644 --- a/repository.h +++ b/repository.h @@ -281,6 +281,6 @@ void repo_update_index_if_able(struct repository *, struct lock_file *); * Return 1 if upgrade repository format to target_version succeeded, * 0 if no upgrade is necessary, and -1 when upgrade is not possible. */ -int upgrade_repository_format(int target_version); +int upgrade_repository_format(struct repository *repo, int target_version); #endif /* REPOSITORY_H */ diff --git a/setup.c b/setup.c index 5dc27caf15..ed0c14e98e 100644 --- a/setup.c +++ b/setup.c @@ -811,7 +811,7 @@ static int check_repository_format_gently(struct repository *repo, return 0; } -int upgrade_repository_format(int target_version) +int upgrade_repository_format(struct repository *repo, int target_version) { struct strbuf sb = STRBUF_INIT; struct strbuf err = STRBUF_INIT; @@ -819,7 +819,7 @@ int upgrade_repository_format(int target_version) struct repository_format repo_fmt = REPOSITORY_FORMAT_INIT; int ret; - repo_common_path_append(the_repository, &sb, "config"); + repo_common_path_append(repo, &sb, "config"); read_repository_format(&repo_fmt, sb.buf); strbuf_release(&sb); @@ -841,7 +841,7 @@ int upgrade_repository_format(int target_version) } strbuf_addf(&repo_version, "%d", target_version); - repo_config_set(the_repository, "core.repositoryformatversion", repo_version.buf); + repo_config_set(repo, "core.repositoryformatversion", repo_version.buf); ret = 1; diff --git a/worktree.c b/worktree.c index 340b4ed777..97eddc3916 100644 --- a/worktree.c +++ b/worktree.c @@ -1104,7 +1104,7 @@ void write_worktree_linking_files(const char *dotgit, const char *gitdir, strbuf_realpath(&repo, repo.buf, 1); if (use_relative_paths && !the_repository->repository_format_relative_worktrees) { - if (upgrade_repository_format(1) < 0) + if (upgrade_repository_format(the_repository, 1) < 0) die(_("unable to upgrade repository format to support relative worktrees")); if (repo_config_set_gently(the_repository, "extensions.relativeWorktrees", "true")) die(_("unable to set extensions.relativeWorktrees setting"));