config: Change output of --get-regexp for valueless keys
authorFrank Lichtenheld <frank@lichtenheld.de>
Mon, 25 Jun 2007 14:03:54 +0000 (16:03 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 27 Jun 2007 01:20:47 +0000 (18:20 -0700)
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>
builtin-config.c
t/t1300-repo-config.sh

index b2515f7..dbc2339 100644 (file)
@@ -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)
index 3f3fd2d..f1a78b1 100755 (executable)
@@ -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' \