aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--builtin-config.c8
-rwxr-xr-xt/t1300-repo-config.sh6
2 files changed, 12 insertions, 2 deletions
diff --git a/builtin-config.c b/builtin-config.c
index b2515f7e6..dbc2339d0 100644
--- a/builtin-config.c
+++ b/builtin-config.c
@@ -38,8 +38,12 @@ static int show_config(const char* key_, const char* value_)
regexec(regexp, (value_?value_:""), 0, NULL, 0)))
return 0;
- if (show_keys)
- printf("%s ", key_);
+ if (show_keys) {
+ if (value_)
+ printf("%s ", key_);
+ else
+ printf("%s", key_);
+ }
if (seen && !do_all)
dup_error = 1;
if (type == T_INT)
diff --git a/t/t1300-repo-config.sh b/t/t1300-repo-config.sh
index 3f3fd2d7f..f1a78b19a 100755
--- a/t/t1300-repo-config.sh
+++ b/t/t1300-repo-config.sh
@@ -283,6 +283,12 @@ EOF
test_expect_success 'get variable with no value' \
'git-config --get novalue.variable ^$'
+echo novalue.variable > expect
+
+test_expect_success 'get-regexp variable with no value' \
+ 'git-config --get-regexp novalue > output &&
+ cmp output expect'
+
git-config > output 2>&1
test_expect_success 'no arguments, but no crash' \