[PATCH] pretty.c: make git_pretty_formats_config return -1 on git_config_string failure
- From
Tanay Abhra <tanayabh@gmail.com>
- Date
- Aug 4, 2014, 14:41 UTC
- Message-ID
- <1407163275-3006-1-git-send-email-tanayabh@gmail.com>
`git_pretty_formats_config()` continues without checking git_config_string's return value which can lead to a SEGFAULT. Instead return -1 when git_config_string fails signalling `git_config()` to die printing the location of the erroneous variable.
Signed-off-by: Tanay Abhra <tanayabh@gmail.com> --- pretty.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/pretty.c b/pretty.c index 3a1da6f..72dbf55 100644 --- a/pretty.c +++ b/pretty.c @@ -65,7 +65,9 @@ static int git_pretty_formats_config(const char *var, const char *value, void *c commit_format->name = xstrdup(name); commit_format->format = CMIT_FMT_USERFORMAT; - git_config_string(&fmt, var, value); + if (git_config_string(&fmt, var, value)) + return -1; + if (starts_with(fmt, "format:") || starts_with(fmt, "tformat:")) { commit_format->is_tformat = fmt[0] == 't'; fmt = strchr(fmt, ':') + 1;
-- 1.9.0.GIT