From 8d387cbb31720448e982bcde84a1ba1e51830470 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Wed, 30 Aug 2017 14:41:47 +0200 Subject: [PATCH] Don't mess ev->ap (allows multiple %m in layout). --- src/xbt/xbt_log_layout_format.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/xbt/xbt_log_layout_format.c b/src/xbt/xbt_log_layout_format.c index 18c55ac2ce..7c41b5b706 100644 --- a/src/xbt/xbt_log_layout_format.c +++ b/src/xbt/xbt_log_layout_format.c @@ -153,7 +153,10 @@ static int xbt_log_layout_format_doit(xbt_log_layout_t l, xbt_log_event_t ev, co 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; } -- 2.20.1