Re: [PATCH v4 1/3] config: rename `git_etc_config()`
- From
Jeff King <peff@peff.net>
- Date
- Apr 17, 2021, 08:44 UTC
- Message-ID
- <YHqf9zjSzpYl7IAW@coredump.intra.peff.net>
- In-Reply-To
- <20210416211451.GP2947267@szeder.dev>
On Fri, Apr 16, 2021 at 11:14:51PM +0200, SZEDER Gábor wrote:
Show 16 quoted lines
> > @@ -1883,6 +1880,7 @@ static int do_git_config_sequence(const struct config_options *opts,
> > config_fn_t fn, void *data)
> > {
> > int ret = 0;
> > + char *system_config = git_system_config();
> > char *xdg_config = xdg_config_home("config");
> > char *user_config = expand_user_path("~/.gitconfig", 0);
> > char *repo_config;
> > @@ -1896,11 +1894,10 @@ static int do_git_config_sequence(const struct config_options *opts,
> > repo_config = NULL;
> >
> > current_parsing_scope = CONFIG_SCOPE_SYSTEM;
> > - if (git_config_system() && !access_or_die(git_etc_gitconfig(), R_OK,
>
> Removing git_config_system() from the condition breaks
> GIT_CONFIG_NOSYSTEM:Good catch. My gut feeling is that the new git_system_config() should check NOSYSTEM and return NULL if it's set, and then we can get rid of git_config_system() entirely.
That is slightly different than the old behavior; right now GIT_CONFIG_NOSYSTEM only prevents reading during the normal sequence, and not reading (or writing!) via "git config --system". But I think it would be an improvement to prevent those (the whole point of the feature was to avoid the test suite accidentally accessing the larger environment).
-Peff