Code

trace: factor out "do we want to trace" logic
[git.git] / trace.c
diff --git a/trace.c b/trace.c
index 1d0e17e014a5268f76e1c13de2311b27866bc6a9..ca0ab0448bd3981e740e99e14935670cae729ede 100644 (file)
--- a/trace.c
+++ b/trace.c
@@ -148,10 +148,8 @@ void trace_repo_setup(const char *prefix)
 {
        const char *git_work_tree;
        char cwd[PATH_MAX];
-       char *trace = getenv("GIT_TRACE");
 
-       if (!trace || !strcmp(trace, "") ||
-           !strcmp(trace, "0") || !strcasecmp(trace, "false"))
+       if (!trace_want("GIT_TRACE"))
                return;
 
        if (!getcwd(cwd, PATH_MAX))
@@ -168,3 +166,13 @@ void trace_repo_setup(const char *prefix)
        trace_printf("setup: cwd: %s\n", quote_crnl(cwd));
        trace_printf("setup: prefix: %s\n", quote_crnl(prefix));
 }
+
+int trace_want(const char *key)
+{
+       const char *trace = getenv(key);
+
+       if (!trace || !strcmp(trace, "") ||
+           !strcmp(trace, "0") || !strcasecmp(trace, "false"))
+               return 0;
+       return 1;
+}