Subject: Re: [PATCH] buitin_config: return postitive status in get_value

From: Nguyen Thai Ngoc Duy <[email-masked]>
Date: Sat, 28 Jul 2012 20:29:23 +0700

On Sat, Jul 28, 2012 at 04:18:49PM +0300, Nikolay Vladimirov wrote:
> But the behavior now seems kind of strange, or maybe I'm missing something:
> # git config foobar; echo $?
> error: key does not contain a section: foobar
> 255
> 
> # git config foobar.info; echo $?
> 1
> 
> git version 1.7.11.2
> 
> I would generally expect the both to behave the same way.

Then the following patch may be better because it leaves other cases
untouched (I'm not saying that we should or should not do it though)

-- 8< --
diff --git a/builtin/config.c b/builtin/config.c
index 8cd08da..d048ebf 100644
--- a/builtin/config.c
+++ b/builtin/config.c
@@ -199,8 +199,10 @@ static int get_value(const char *key_, const char *regex_)
 			goto free_strings;
 		}
 	} else {
-		if (git_config_parse_key(key_, &key, NULL))
+		if (git_config_parse_key(key_, &key, NULL)) {
+			ret = 1;
 			goto free_strings;
+		}
 	}
 
 	if (regex_) {
-- 8< --

-- 
Duy