зеркало из https://github.com/microsoft/git.git
trace2: handle NULL values in tr2_sysenv config callback
If you have config with an implicit bool like: [trace2] envvars we'll segfault, as we unconditionally try to xstrdup() the value. We should instead detect and complain, as a boolean value has no meaning here. The same is true for every variable in tr2_sysenv_settings (and this patch covers them all, as we check them in a loop). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
a62712696e
Коммит
24942ef316
|
@ -68,6 +68,8 @@ static int tr2_sysenv_cb(const char *key, const char *value,
|
|||
|
||||
for (k = 0; k < ARRAY_SIZE(tr2_sysenv_settings); k++) {
|
||||
if (!strcmp(key, tr2_sysenv_settings[k].git_config_name)) {
|
||||
if (!value)
|
||||
return config_error_nonbool(key);
|
||||
free(tr2_sysenv_settings[k].value);
|
||||
tr2_sysenv_settings[k].value = xstrdup(value);
|
||||
return 0;
|
||||
|
|
Загрузка…
Ссылка в новой задаче