summaryrefslogtreecommitdiff
path: root/source3/lib/dprintf.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/lib/dprintf.c')
-rw-r--r--source3/lib/dprintf.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source3/lib/dprintf.c b/source3/lib/dprintf.c
index dadebdb3b4..4dcc283047 100644
--- a/source3/lib/dprintf.c
+++ b/source3/lib/dprintf.c
@@ -36,12 +36,18 @@ int d_vfprintf(FILE *f, const char *format, va_list ap)
char *p, *p2;
int ret, maxlen, clen;
const char *msgstr;
+ va_list ap2;
/* do any message translations */
msgstr = lang_msg(format);
if (!msgstr) return -1;
- ret = vasprintf(&p, msgstr, ap);
+#if defined(HAVE_VA_COPY)
+ __va_copy(ap2, ap)
+#else
+ ap2 = ap;
+#endif
+ ret = vasprintf(&p, msgstr, ap2);
lang_msg_free(msgstr);