repo-config: give value_ a sane default so regexec won't segfault
Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>maint
parent
aa1dbc9897
commit
f067a13745
|
@ -14,6 +14,9 @@ static enum { T_RAW, T_INT, T_BOOL } type = T_RAW;
|
||||||
|
|
||||||
static int show_config(const char* key_, const char* value_)
|
static int show_config(const char* key_, const char* value_)
|
||||||
{
|
{
|
||||||
|
if (value_ == NULL)
|
||||||
|
value_ = "";
|
||||||
|
|
||||||
if (!strcmp(key_, key) &&
|
if (!strcmp(key_, key) &&
|
||||||
(regexp == NULL ||
|
(regexp == NULL ||
|
||||||
(do_not_match ^
|
(do_not_match ^
|
||||||
|
@ -35,7 +38,7 @@ static int show_config(const char* key_, const char* value_)
|
||||||
sprintf(value, "%s", git_config_bool(key_, value_)
|
sprintf(value, "%s", git_config_bool(key_, value_)
|
||||||
? "true" : "false");
|
? "true" : "false");
|
||||||
} else {
|
} else {
|
||||||
value = strdup(value_ ? value_ : "");
|
value = strdup(value_);
|
||||||
}
|
}
|
||||||
seen++;
|
seen++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -247,5 +247,13 @@ EOF
|
||||||
|
|
||||||
test_expect_success 'hierarchical section value' 'cmp .git/config expect'
|
test_expect_success 'hierarchical section value' 'cmp .git/config expect'
|
||||||
|
|
||||||
|
cat > .git/config << EOF
|
||||||
|
[novalue]
|
||||||
|
variable
|
||||||
|
EOF
|
||||||
|
|
||||||
|
test_expect_success 'get variable with no value' \
|
||||||
|
'git-repo-config --get novalue.variable ^$'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue