]> git.ipfire.org Git - thirdparty/git.git/commitdiff
trace: stop using `the_repository`
authorPatrick Steinhardt <ps@pks.im>
Tue, 17 Dec 2024 06:43:50 +0000 (07:43 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 18 Dec 2024 18:44:30 +0000 (10:44 -0800)
Stop using `the_repository` in the "trace" subsystem by passing in a
repository when setting up tracing.

Adjust the only caller accordingly.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git.c
trace.c
trace.h

diff --git a/git.c b/git.c
index d977ebc84cfba611c3e452cace3bda1ce13faf5d..a94dab3770251fa8b7b466daa85c2d61ca730670 100644 (file)
--- a/git.c
+++ b/git.c
@@ -467,7 +467,7 @@ static int run_builtin(struct cmd_struct *p, int argc, const char **argv, struct
                use_pager = 1;
        if (run_setup && startup_info->have_repository)
                /* get_git_dir() may set up repo, avoid that */
-               trace_repo_setup();
+               trace_repo_setup(the_repository);
        commit_pager_choice();
 
        if (!help && p->option & NEED_WORK_TREE)
diff --git a/trace.c b/trace.c
index 2cfd25942ee725b022e8dea26096f01f2164a407..9b99460db82a28634c09260b42f311f7c69f4d59 100644 (file)
--- a/trace.c
+++ b/trace.c
@@ -21,7 +21,6 @@
  *  along with this program; if not, see <https://www.gnu.org/licenses/>.
  */
 
-#define USE_THE_REPOSITORY_VARIABLE
 #define DISABLE_SIGN_COMPARE_WARNINGS
 
 #include "git-compat-util.h"
@@ -298,7 +297,7 @@ static const char *quote_crnl(const char *path)
        return new_path.buf;
 }
 
-void trace_repo_setup(void)
+void trace_repo_setup(struct repository *r)
 {
        const char *git_work_tree, *prefix = startup_info->prefix;
        char *cwd;
@@ -308,14 +307,14 @@ void trace_repo_setup(void)
 
        cwd = xgetcwd();
 
-       if (!(git_work_tree = repo_get_work_tree(the_repository)))
+       if (!(git_work_tree = repo_get_work_tree(r)))
                git_work_tree = "(null)";
 
        if (!startup_info->prefix)
                prefix = "(null)";
 
-       trace_printf_key(&trace_setup_key, "setup: git_dir: %s\n", quote_crnl(repo_get_git_dir(the_repository)));
-       trace_printf_key(&trace_setup_key, "setup: git_common_dir: %s\n", quote_crnl(repo_get_common_dir(the_repository)));
+       trace_printf_key(&trace_setup_key, "setup: git_dir: %s\n", quote_crnl(repo_get_git_dir(r)));
+       trace_printf_key(&trace_setup_key, "setup: git_common_dir: %s\n", quote_crnl(repo_get_common_dir(r)));
        trace_printf_key(&trace_setup_key, "setup: worktree: %s\n", quote_crnl(git_work_tree));
        trace_printf_key(&trace_setup_key, "setup: cwd: %s\n", quote_crnl(cwd));
        trace_printf_key(&trace_setup_key, "setup: prefix: %s\n", quote_crnl(prefix));
diff --git a/trace.h b/trace.h
index d304d55aa1d706dc3f65bbf15c7b2506bc0e9499..9152fe9b3e565ee8dde1ddf185f30f021812a416 100644 (file)
--- a/trace.h
+++ b/trace.h
@@ -92,7 +92,9 @@ extern struct trace_key trace_default_key;
 extern struct trace_key trace_perf_key;
 extern struct trace_key trace_setup_key;
 
-void trace_repo_setup(void);
+struct repository;
+
+void trace_repo_setup(struct repository *r);
 
 /**
  * Checks whether the trace key is enabled. Used to prevent expensive