Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH v2 5/6] config: add `git_die_config()` to the config-set API

From: Junio C Hamano <hidden>
Date: 2016-06-15 23:02:02

Tanay Abhra [off-list ref] writes:
On 7/25/2014 7:33 PM, Matthieu Moy wrote:
quoted
Tanay Abhra [off-list ref] writes:
quoted
--- a/config.c
+++ b/config.c
@@ -1403,11 +1403,12 @@ const struct string_list *git_configset_get_value_multi(struct config_set *cs, c
 
 int git_configset_get_string_const(struct config_set *cs, const char *key, const char **dest)
 {
-	const char *value;
-	if (!git_configset_get_value(cs, key, &value))
-		return git_config_string(dest, key, value);
-	else
-		return 1;
+	int ret;
+	char *value;
+	ret = git_configset_get_string(cs, key, &value);
+	if (ret <= 0)
+		*dest = (const char*)value;
+	return ret;
 }
Isn't this a fixup meant for another series?
Though v12 is in pu, Junio commented that git_configset_get_string_const() &
git_configset_get_string() can be done more concisely, I was trying to do
that but I failed.
My comment on that version was not about conciseness.  You had one
that called git_config_string() to let the callee do the nonbool
error handling and xstrdup() of the non-error return value, and the
other one that did exactly what a call to git_config_string() would
have done.  That is being redundant, not just failing to be concise.

I was actually hoping that we would see just

int git_configset_get_string(struct config_set *cs, const char *key, char **dest)
{
	return git_configset_get_string_const(cs, key, (const char **)dest);
}

with the implementation of _const() variant be the one from v12.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help