@@ -85,16 +85,6 @@ struct config_reader {
8585 */
8686 struct config_source * source ;
8787 struct key_value_info * config_kvi ;
88- /*
89- * The "scope" of the current config source being parsed (repo, global,
90- * etc). Like "source", this is only set when parsing a config source.
91- * It's not part of "source" because it transcends a single file (i.e.,
92- * a file included from .git/config is still in "repo" scope).
93- *
94- * When iterating through a configset, the equivalent value is
95- * "config_kvi.scope" (see above).
96- */
97- enum config_scope parsing_scope ;
9888};
9989/*
10090 * Where possible, prefer to accept "struct config_reader" as an arg than to use
@@ -125,19 +115,9 @@ static inline struct config_source *config_reader_pop_source(struct config_reade
125115static inline void config_reader_set_kvi (struct config_reader * reader ,
126116 struct key_value_info * kvi )
127117{
128- if (kvi && (reader -> source || reader -> parsing_scope ))
129- BUG ("kvi should not be set while parsing a config source" );
130118 reader -> config_kvi = kvi ;
131119}
132120
133- static inline void config_reader_set_scope (struct config_reader * reader ,
134- enum config_scope scope )
135- {
136- if (scope && reader -> config_kvi )
137- BUG ("scope should only be set when iterating through a config source" );
138- reader -> parsing_scope = scope ;
139- }
140-
141121static int pack_compression_seen ;
142122static int zlib_compression_seen ;
143123
@@ -412,19 +392,13 @@ static void populate_remote_urls(struct config_include_data *inc)
412392{
413393 struct config_options opts ;
414394
415- enum config_scope store_scope = inc -> config_reader -> parsing_scope ;
416-
417395 opts = * inc -> opts ;
418396 opts .unconditional_remote_url = 1 ;
419397
420- config_reader_set_scope (inc -> config_reader , 0 );
421-
422398 inc -> remote_urls = xmalloc (sizeof (* inc -> remote_urls ));
423399 string_list_init_dup (inc -> remote_urls );
424400 config_with_options (add_remote_url , inc -> remote_urls ,
425401 inc -> config_source , inc -> repo , & opts );
426-
427- config_reader_set_scope (inc -> config_reader , store_scope );
428402}
429403
430404static int forbid_remote_url (const char * var , const char * value UNUSED ,
@@ -2255,7 +2229,6 @@ static int do_git_config_sequence(struct config_reader *reader,
22552229 char * user_config = NULL ;
22562230 char * repo_config ;
22572231 char * worktree_config ;
2258- enum config_scope prev_parsing_scope = reader -> parsing_scope ;
22592232
22602233 /*
22612234 * Ensure that either:
@@ -2273,15 +2246,13 @@ static int do_git_config_sequence(struct config_reader *reader,
22732246 worktree_config = NULL ;
22742247 }
22752248
2276- config_reader_set_scope (reader , CONFIG_SCOPE_SYSTEM );
22772249 if (git_config_system () && system_config &&
22782250 !access_or_die (system_config , R_OK ,
22792251 opts -> system_gently ? ACCESS_EACCES_OK : 0 ))
22802252 ret += git_config_from_file_with_options (fn , system_config ,
22812253 data , CONFIG_SCOPE_SYSTEM ,
22822254 NULL );
22832255
2284- config_reader_set_scope (reader , CONFIG_SCOPE_GLOBAL );
22852256 git_global_config (& user_config , & xdg_config );
22862257
22872258 if (xdg_config && !access_or_die (xdg_config , R_OK , ACCESS_EACCES_OK ))
@@ -2292,13 +2263,11 @@ static int do_git_config_sequence(struct config_reader *reader,
22922263 ret += git_config_from_file_with_options (fn , user_config , data ,
22932264 CONFIG_SCOPE_GLOBAL , NULL );
22942265
2295- config_reader_set_scope (reader , CONFIG_SCOPE_LOCAL );
22962266 if (!opts -> ignore_repo && repo_config &&
22972267 !access_or_die (repo_config , R_OK , 0 ))
22982268 ret += git_config_from_file_with_options (fn , repo_config , data ,
22992269 CONFIG_SCOPE_LOCAL , NULL );
23002270
2301- config_reader_set_scope (reader , CONFIG_SCOPE_WORKTREE );
23022271 if (!opts -> ignore_worktree && worktree_config &&
23032272 repo && repo -> repository_format_worktree_config &&
23042273 !access_or_die (worktree_config , R_OK , 0 )) {
@@ -2307,11 +2276,9 @@ static int do_git_config_sequence(struct config_reader *reader,
23072276 NULL );
23082277 }
23092278
2310- config_reader_set_scope (reader , CONFIG_SCOPE_COMMAND );
23112279 if (!opts -> ignore_cmdline && git_config_from_parameters (fn , data ) < 0 )
23122280 die (_ ("unable to parse command-line config" ));
23132281
2314- config_reader_set_scope (reader , prev_parsing_scope );
23152282 free (system_config );
23162283 free (xdg_config );
23172284 free (user_config );
@@ -2326,7 +2293,6 @@ int config_with_options(config_fn_t fn, void *data,
23262293 const struct config_options * opts )
23272294{
23282295 struct config_include_data inc = CONFIG_INCLUDE_INIT ;
2329- enum config_scope prev_scope = the_reader .parsing_scope ;
23302296 int ret ;
23312297
23322298 if (opts -> respect_includes ) {
@@ -2340,9 +2306,6 @@ int config_with_options(config_fn_t fn, void *data,
23402306 data = & inc ;
23412307 }
23422308
2343- if (config_source )
2344- config_reader_set_scope (& the_reader , config_source -> scope );
2345-
23462309 /*
23472310 * If we have a specific filename, use it. Otherwise, follow the
23482311 * regular lookup sequence.
@@ -2364,7 +2327,6 @@ int config_with_options(config_fn_t fn, void *data,
23642327 string_list_clear (inc .remote_urls , 0 );
23652328 FREE_AND_NULL (inc .remote_urls );
23662329 }
2367- config_reader_set_scope (& the_reader , prev_scope );
23682330 return ret ;
23692331}
23702332
@@ -4088,14 +4050,6 @@ static int reader_config_name(struct config_reader *reader, const char **out)
40884050 return 0 ;
40894051}
40904052
4091- enum config_scope current_config_scope (void )
4092- {
4093- if (the_reader .config_kvi )
4094- return the_reader .config_kvi -> scope ;
4095- else
4096- return the_reader .parsing_scope ;
4097- }
4098-
40994053int lookup_config (const char * * mapping , int nr_mapping , const char * var )
41004054{
41014055 int i ;
0 commit comments