Merge branch 'gc/config-context' into next
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:
@ -1275,7 +1275,8 @@ static int find_symref(const char *refname,
|
||||
}
|
||||
|
||||
static int parse_object_filter_config(const char *var, const char *value,
|
||||
struct upload_pack_data *data)
|
||||
const struct key_value_info *kvi,
|
||||
struct upload_pack_data *data)
|
||||
{
|
||||
struct strbuf buf = STRBUF_INIT;
|
||||
const char *sub, *key;
|
||||
@ -1302,14 +1303,17 @@ static int parse_object_filter_config(const char *var, const char *value,
|
||||
}
|
||||
string_list_insert(&data->allowed_filters, buf.buf)->util =
|
||||
(void *)(intptr_t)1;
|
||||
data->tree_filter_max_depth = git_config_ulong(var, value);
|
||||
data->tree_filter_max_depth = git_config_ulong(var, value,
|
||||
kvi);
|
||||
}
|
||||
|
||||
strbuf_release(&buf);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int upload_pack_config(const char *var, const char *value, void *cb_data)
|
||||
static int upload_pack_config(const char *var, const char *value,
|
||||
const struct config_context *ctx,
|
||||
void *cb_data)
|
||||
{
|
||||
struct upload_pack_data *data = cb_data;
|
||||
|
||||
@ -1329,7 +1333,7 @@ static int upload_pack_config(const char *var, const char *value, void *cb_data)
|
||||
else
|
||||
data->allow_uor &= ~ALLOW_ANY_SHA1;
|
||||
} else if (!strcmp("uploadpack.keepalive", var)) {
|
||||
data->keepalive = git_config_int(var, value);
|
||||
data->keepalive = git_config_int(var, value, ctx->kvi);
|
||||
if (!data->keepalive)
|
||||
data->keepalive = -1;
|
||||
} else if (!strcmp("uploadpack.allowfilter", var)) {
|
||||
@ -1344,13 +1348,15 @@ static int upload_pack_config(const char *var, const char *value, void *cb_data)
|
||||
data->advertise_sid = git_config_bool(var, value);
|
||||
}
|
||||
|
||||
if (parse_object_filter_config(var, value, data) < 0)
|
||||
if (parse_object_filter_config(var, value, ctx->kvi, data) < 0)
|
||||
return -1;
|
||||
|
||||
return parse_hide_refs_config(var, value, "uploadpack", &data->hidden_refs);
|
||||
}
|
||||
|
||||
static int upload_pack_protected_config(const char *var, const char *value, void *cb_data)
|
||||
static int upload_pack_protected_config(const char *var, const char *value,
|
||||
const struct config_context *ctx UNUSED,
|
||||
void *cb_data)
|
||||
{
|
||||
struct upload_pack_data *data = cb_data;
|
||||
|
||||
|
Reference in New Issue
Block a user