Merge branch 'gc/config-context'
Reduce reliance on a global state in the config reading API. * gc/config-context: config: pass source to config_parser_event_fn_t config: add kvi.path, use it to evaluate includes config.c: remove config_reader from configsets config: pass kvi to die_bad_number() trace2: plumb config kvi config.c: pass ctx with CLI config config: pass ctx with config files config.c: pass ctx in configsets config: add ctx arg to config_fn_t urlmatch.h: use config_fn_t type config: inline git_color_default_config
This commit is contained in:
@ -791,7 +791,8 @@ static int checkout(int submodule_progress, int filter_submodules)
|
||||
return err;
|
||||
}
|
||||
|
||||
static int git_clone_config(const char *k, const char *v, void *cb)
|
||||
static int git_clone_config(const char *k, const char *v,
|
||||
const struct config_context *ctx, void *cb)
|
||||
{
|
||||
if (!strcmp(k, "clone.defaultremotename")) {
|
||||
free(remote_name);
|
||||
@ -802,17 +803,19 @@ static int git_clone_config(const char *k, const char *v, void *cb)
|
||||
if (!strcmp(k, "clone.filtersubmodules"))
|
||||
config_filter_submodules = git_config_bool(k, v);
|
||||
|
||||
return git_default_config(k, v, cb);
|
||||
return git_default_config(k, v, ctx, cb);
|
||||
}
|
||||
|
||||
static int write_one_config(const char *key, const char *value, void *data)
|
||||
static int write_one_config(const char *key, const char *value,
|
||||
const struct config_context *ctx,
|
||||
void *data)
|
||||
{
|
||||
/*
|
||||
* give git_clone_config a chance to write config values back to the
|
||||
* environment, since git_config_set_multivar_gently only deals with
|
||||
* config-file writes
|
||||
*/
|
||||
int apply_failed = git_clone_config(key, value, data);
|
||||
int apply_failed = git_clone_config(key, value, ctx, data);
|
||||
if (apply_failed)
|
||||
return apply_failed;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user