git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 2/3] git_config_set_multivar_in_file: all non-zero returns are errors

From
Jeff King <peff@peff.net>
Date
Apr 9, 2016, 17:42 UTC
Message-ID
<20160409174253.GB11873@sigill.intra.peff.net>
In-Reply-To
<20160409173904.GA5127@sigill.intra.peff.net>

This function is just a thin wrapper for the "_gently" form of the function. But the gently form is designed to feed builtin/config.c, which passes our return code directly to its exit status, and thus uses positive error values for some cases. We check only negative values, meaning we would fail to die in some cases (e.g., a malformed key).

This may or may not be triggerable in practice; we tend to use this non-gentle form only when setting internal variables, which would not have malformed keys.

Signed-off-by: Jeff King <peff@peff.net>
---
 config.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/config.c b/config.c
index 6b81931..d446315 100644
--- a/config.c
+++ b/config.c
@@ -2222,7 +2222,7 @@ void git_config_set_multivar_in_file(const char *config_filename,
 				     const char *value_regex, int multi_replace)
 {
 	if (git_config_set_multivar_in_file_gently(config_filename, key, value,
-						   value_regex, multi_replace) < 0)
+						   value_regex, multi_replace))
 		die(_("could not set '%s' to '%s'"), key, value);
 }
 
-- 
2.8.1.245.g18e0f5c
Previous: Jeff KingNext: Jeff King
Message 12 of 17 in “git segfaults on older Solaris releases”
  1. Tom G. ChristensenApr 7, 2016
  2. Junio C HamanoApr 7, 2016
  3. Junio C HamanoApr 7, 2016
  4. David TurnerApr 7, 2016
  5. Jeff KingApr 7, 2016
  6. Junio C HamanoApr 7, 2016
  7. Jeff KingApr 7, 2016
  8. Tom G. ChristensenApr 7, 2016
  9. Tom G. ChristensenApr 9, 2016
  10. Jeff KingApr 9, 2016
  11. 1/3 config: lower-case first word of error stringsJeff King, Apr 9, 2016
  12. 2/3 git_config_set_multivar_in_file: all non-zero returns are errorsJeff King, Apr 9, 2016
  13. 3/3 git_config_set_multivar_in_file: handle "unset" errorsJeff King, Apr 9, 2016
  14. Tom G. ChristensenApr 9, 2016
  15. Jeff KingApr 9, 2016
  16. Patrick SteinhardtApr 12, 2016
  17. Tom G. ChristensenApr 7, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.