summaryrefslogtreecommitdiffstats
path: root/advice.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2012-07-23 14:48:57 -0400
committerJunio C Hamano <gitster@pobox.com>2012-07-23 13:10:43 -0700
commit447b99c8b1102746054644acd268f4c1b115a9f8 (patch)
tree8a8eedaa50f8ccaf477d0341648dd0b8465a6bb1 /advice.c
parentd0f1ea6003d97e63110fa7d50bb07f546a909b6e (diff)
downloadgit-447b99c8b1102746054644acd268f4c1b115a9f8.tar.gz
git-447b99c8b1102746054644acd268f4c1b115a9f8.tar.xz
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 <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'advice.c')
-rw-r--r--advice.c2
1 files changed, 1 insertions, 1 deletions
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) {