Fix typo/thinko in static buffer conversion; use vsnprintf() not snprintf()
This commit is contained in:
@@ -157,12 +157,12 @@ warning(int errnum, const char *fmt, va_list ap)
|
|||||||
|
|
||||||
/* Use static buffer if possible, else dynamic. */
|
/* Use static buffer if possible, else dynamic. */
|
||||||
va_copy(ap2, ap);
|
va_copy(ap2, ap);
|
||||||
buflen = snprintf(static_buf, sizeof(static_buf), fmt, ap2);
|
buflen = vsnprintf(static_buf, sizeof(static_buf), fmt, ap2);
|
||||||
va_end(ap2);
|
va_end(ap2);
|
||||||
if (buflen >= (int)sizeof(static_buf)) {
|
if (buflen >= (int)sizeof(static_buf)) {
|
||||||
buf = malloc(++buflen);
|
buf = malloc(++buflen);
|
||||||
if (buf != NULL)
|
if (buf != NULL)
|
||||||
(void)snprintf(buf, buflen, fmt, ap);
|
(void)vsnprintf(buf, buflen, fmt, ap);
|
||||||
else
|
else
|
||||||
buf = static_buf;
|
buf = static_buf;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user