From: Jeff King Date: Mon, 23 Jul 2012 18:48:57 +0000 (-0400) Subject: advice: pass varargs to strbuf_vaddf, not strbuf_addf X-Git-Tag: v1.7.11.4~2^2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=447b99c8b1102746054644acd268f4c1b115a9f8;p=git.git advice: pass varargs to strbuf_vaddf, not strbuf_addf The advise() function takes a variable number of arguments and converts them into a va_list object to pass to strbuf for handling. However, we accidentally called strbuf_addf (that takes a variable number of arguments) instead of strbuf_vaddf (that takes a va_list). This bug dates back to v1.7.8.1-1-g23cb5bf, but we never noticed because none of the current callers passes a string with a format specifier in it. And the compiler did not notice because the format string is not available at compile time. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- diff --git a/advice.c b/advice.c index 65a07859f..961a4f5e4 100644 --- a/advice.c +++ b/advice.c @@ -26,7 +26,7 @@ void advise(const char *advice, ...) const char *cp, *np; va_start(params, advice); - strbuf_addf(&buf, advice, params); + strbuf_vaddf(&buf, advice, params); va_end(params); for (cp = buf.buf; *cp; cp = np) {