summaryrefslogtreecommitdiff
path: root/t/t4013/diff.diff-tree_--pretty_--patch-with-raw_initial
diff options
context:
space:
mode:
authorLibravatar Jeff King <peff@peff.net>2016-09-12 20:23:44 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2016-09-13 15:45:45 -0700
commit4babb839aaa18b14a5ec9e8994678d75bc120920 (patch)
tree4f1a207de47c583b525eaebf9ecc4da1aa823e22 /t/t4013/diff.diff-tree_--pretty_--patch-with-raw_initial
parentpager: remove obsolete comment (diff)
downloadtgif-4babb839aaa18b14a5ec9e8994678d75bc120920.tar.xz
pager: stop loading git_default_config()
In git_pager(), we really only care about getting the value of core.pager. But to do so, we use the git_default_config() callback, which loads many other values. Ordinarily it isn't a big deal to load this config an extra time, as it simply overwrites the values from the previous run. But it's a bad idea here, for two reasons: 1. The pager setup may be called very early in the program, before we have found the git repository. As a result, we may fail to read the correct repo-level config file. This is a problem for core.pager, too, but we should at least try to minimize the pollution to other configured values. 2. Because we call setup_pager() from git.c, basically every builtin command _may_ end up reading this config and getting an implicit git_default_config() setup. Which doesn't sound like a terrible thing, except that we don't do it consistently; it triggers only when stdout is a tty. So if a command forgets to load the default config itself (but depends on it anyway), it may appear to work, and then mysteriously fail when the pager is not in use. We can improve this by loading _just_ the core.pager config from git_pager(). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4013/diff.diff-tree_--pretty_--patch-with-raw_initial')
0 files changed, 0 insertions, 0 deletions