Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> writes: > So far we can only pass one flag, respect_includes, to thie function. We s/thie/this/ > need to pass some more (non-flag even), so let's make it accept a struct > instead of an integer. > > Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> > --- > builtin/config.c | 21 ++++++++++++--------- > cache.h | 7 ++++++- > config.c | 16 +++++++++++----- > 3 files changed, 29 insertions(+), 15 deletions(-) > > diff --git a/builtin/config.c b/builtin/config.c > index 4f49a0edb9..b937d175a9 100644 > --- a/builtin/config.c > +++ b/builtin/config.c > @@ -26,7 +26,8 @@ static int use_global_config, use_system_config, use_local_config; > static struct git_config_source given_config_source; > static int actions, types; > static int end_null; > -static int respect_includes = -1; > +static int respect_includes_opt = -1; > +static struct config_options config_options; > static int show_origin; > > #define ACTION_GET (1<<0) > @@ -81,7 +82,7 @@ static struct option builtin_config_options[] = { > OPT_GROUP(N_("Other")), > OPT_BOOL('z', "null", &end_null, N_("terminate values with NUL byte")), > OPT_BOOL(0, "name-only", &omit_values, N_("show variable names only")), > - OPT_BOOL(0, "includes", &respect_includes, N_("respect include directives on lookup")), > + OPT_BOOL(0, "includes", &respect_includes_opt, N_("respect include directives on lookup")), It would be more in line with what the log message advertised if you did static struct config_options config_options = { -1, /* .respect_includes: unspecified */ }; OPT_BOOL(0, "includes", &config_options.respect_includes, N_("...")), no?