aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank Lichtenheld <frank@lichtenheld.de>2007-06-25 16:03:54 +0200
committerJunio C Hamano <gitster@pobox.com>2007-06-26 18:20:47 -0700
commitb69ba460bb0710b2af8a20b4b0d62233f29401ec (patch)
treeeb84fa18ed8c179ef2467cfcf76f3eb5a4de75e1
parente373bb73889e15452b622df67465b77803876aa6 (diff)
downloadgit-b69ba460bb0710b2af8a20b4b0d62233f29401ec.tar.gz
git-b69ba460bb0710b2af8a20b4b0d62233f29401ec.tar.xz
config: Change output of --get-regexp for valueless keys
Print no space after the name of a key without value. Otherwise keys without values are printed exactly the same as keys with empty values. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-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' \