case 'm': { /* user-provided message; LOG4J compliant */
int sz;
set_sz_from_precision();
- int len = vsnprintf(p, sz, msg_fmt, ev->ap);
+ va_list ap;
+ va_copy(ap, ev->ap);
+ int len = vsnprintf(p, sz, msg_fmt, ap);
+ va_end(ap);
check_overflow(MIN(sz, len));
break;
}