1
0
mirror of https://github.com/git/git.git synced 2024-09-22 11:21:15 +02:00

git_config: don't peek at global config_parameters

The config_parameters list in config.c is an implementation
detail of git_config_from_parameters; instead, that function
should tell us whether it found anything.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2011-05-24 18:49:45 -04:00 committed by Junio C Hamano
parent 3ddf0968c2
commit 5a0c9eeb89

View File

@ -832,7 +832,7 @@ int git_config_from_parameters(config_fn_t fn, void *data)
for (ct = config_parameters; ct; ct = ct->next)
if (fn(ct->name, ct->value, data) < 0)
return -1;
return 0;
return config_parameters != NULL;
}
int git_config_early(config_fn_t fn, void *data, const char *repo_config)
@ -864,9 +864,16 @@ int git_config_early(config_fn_t fn, void *data, const char *repo_config)
found += 1;
}
ret += git_config_from_parameters(fn, data);
if (config_parameters)
found += 1;
switch (git_config_from_parameters(fn, data)) {
case -1: /* error */
ret--;
break;
case 0: /* found nothing */
break;
default: /* found at least one item */
found++;
break;
}
if (found == 0)
return -1;