grep: run setup_git_directory_gently() sooner
[gitweb.git] / setup.c
diff --git a/setup.c b/setup.c
index 276916052795c5ffa872b57a7e6723edc71dfdc4..28a2b69d05fec6b07ad8c478676548daf6ad4447 100644 (file)
--- a/setup.c
+++ b/setup.c
@@ -317,7 +317,7 @@ const char *read_gitfile_gently(const char *path)
  * We cannot decide in this function whether we are in the work tree or
  * not, since the config can only be read _after_ this function was called.
  */
-const char *setup_git_directory_gently(int *nongit_ok)
+static const char *setup_git_directory_gently_1(int *nongit_ok)
 {
        const char *work_tree_env = getenv(GIT_WORK_TREE_ENVIRONMENT);
        const char *env_ceiling_dirs = getenv(CEILING_DIRECTORIES_ENVIRONMENT);
@@ -473,6 +473,16 @@ const char *setup_git_directory_gently(int *nongit_ok)
        return cwd + offset;
 }
 
+const char *setup_git_directory_gently(int *nongit_ok)
+{
+       const char *prefix;
+
+       prefix = setup_git_directory_gently_1(nongit_ok);
+       if (startup_info)
+               startup_info->have_repository = !nongit_ok || !*nongit_ok;
+       return prefix;
+}
+
 int git_config_perm(const char *var, const char *value)
 {
        int i;