summaryrefslogtreecommitdiff
path: root/pager.c
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2017-03-13 20:11:04 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-03-14 21:24:16 (GMT)
commit0654aa57f30fc7984e19b91cdbee123f929ca7b1 (patch)
tree609fdd98f5457d55ceda3f1e56d93d9b0a26bcaf /pager.c
parent16ac8b8db6ec7400719db6b5c76edaab33c47606 (diff)
downloadgit-0654aa57f30fc7984e19b91cdbee123f929ca7b1.zip
git-0654aa57f30fc7984e19b91cdbee123f929ca7b1.tar.gz
git-0654aa57f30fc7984e19b91cdbee123f929ca7b1.tar.bz2
setup: make read_early_config() reusable
The pager configuration needs to be read early, possibly before discovering any .git/ directory. Let's not hide this function in pager.c, but make it available to other callers. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'pager.c')
-rw-r--r--pager.c31
1 files changed, 0 insertions, 31 deletions
diff --git a/pager.c b/pager.c
index ae79643..73ca8bc 100644
--- a/pager.c
+++ b/pager.c
@@ -43,37 +43,6 @@ static int core_pager_config(const char *var, const char *value, void *data)
return 0;
}
-static void read_early_config(config_fn_t cb, void *data)
-{
- git_config_with_options(cb, data, NULL, 1);
-
- /*
- * Note that this is a really dirty hack that does the wrong thing in
- * many cases. The crux of the problem is that we cannot run
- * setup_git_directory() early on in git's setup, so we have no idea if
- * we are in a repository or not, and therefore are not sure whether
- * and how to read repository-local config.
- *
- * So if we _aren't_ in a repository (or we are but we would reject its
- * core.repositoryformatversion), we'll read whatever is in .git/config
- * blindly. Similarly, if we _are_ in a repository, but not at the
- * root, we'll fail to find .git/config (because it's really
- * ../.git/config, etc). See t7006 for a complete set of failures.
- *
- * However, we have historically provided this hack because it does
- * work some of the time (namely when you are at the top-level of a
- * valid repository), and would rarely make things worse (i.e., you do
- * not generally have a .git/config file sitting around).
- */
- if (!startup_info->have_repository) {
- struct git_config_source repo_config;
-
- memset(&repo_config, 0, sizeof(repo_config));
- repo_config.file = ".git/config";
- git_config_with_options(cb, data, &repo_config, 1);
- }
-}
-
const char *git_pager(int stdout_is_tty)
{
const char *pager;