Tanay Abhra <tanayabh@xxxxxxxxx> writes: > `git_pretty_formats_config()` continues without checking git_config_string's > return value which can lead to a SEGFAULT. Indeed, without the patch: $ git -c pretty.my= log --pretty=my error: Missing value for 'pretty.my' zsh: segmentation fault git -c pretty.my= log --pretty=my > 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; > + Ack-ed-by: Matthieu Moy <Matthieu.Moy@xxxxxxx> My first thought reading this was "why not rewrite using non-callback API?", but this particular call to git_config needs to iterate over config keys anyway. -- Matthieu Moy http://www-verimag.imag.fr/~moy/ -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html