aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2018-06-28 18:05:09 -0400
committerJunio C Hamano <gitster@pobox.com>2018-07-03 09:35:12 -0700
commit63583203df51c645aa2bf2988bbdfa3d308ef517 (patch)
tree4dc97a476030c3b5e5bb75d167b641f87a0ab255
parent66f9722882993f60be656afaae4c5c9ac92957e9 (diff)
downloadgit-63583203df51c645aa2bf2988bbdfa3d308ef517.tar.xz
config: add CONFIG_ERROR_SILENT handler
We can currently die() or error(), but there's not yet any way for callers to ask us just to quietly return an error. Let's give them one. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--config.c3
-rw-r--r--config.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/config.c b/config.c
index a1d445ecbf..ce02ceaf98 100644
--- a/config.c
+++ b/config.c
@@ -818,6 +818,9 @@ static int git_parse_source(config_fn_t fn, void *data,
case CONFIG_ERROR_ERROR:
error_return = error("%s", error_msg);
break;
+ case CONFIG_ERROR_SILENT:
+ error_return = -1;
+ break;
case CONFIG_ERROR_UNSET:
BUG("config error action unset");
}
diff --git a/config.h b/config.h
index ce75bf1e5c..c02809ffdc 100644
--- a/config.h
+++ b/config.h
@@ -58,6 +58,7 @@ struct config_options {
CONFIG_ERROR_UNSET = 0, /* use source-specific default */
CONFIG_ERROR_DIE, /* die() on error */
CONFIG_ERROR_ERROR, /* error() on error, return -1 */
+ CONFIG_ERROR_SILENT, /* return -1 */
} error_action;
};