From e3a27e83e1c2f84f5a5997dfe06cfa9e8fa5f032 Mon Sep 17 00:00:00 2001 From: Jonas Suhr Christensen Date: Thu, 13 Feb 2014 14:03:09 +0100 Subject: Trying to fix 64bit error --- hugin.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/hugin.c b/hugin.c index 33a9947..564d6be 100644 --- a/hugin.c +++ b/hugin.c @@ -403,8 +403,10 @@ int __debug(const char *func, const int line, va_list va; va_start(va, fmt); + va_list vacpy; + va_copy(vacpy, va); hdr_bufsz = scprintf(hdr_fmt, HDR_ARGS); - msg_bufsz = vscprintf(fmt, va); + msg_bufsz = vscprintf(fmt, vacpy); if(hdr_bufsz < 0 || msg_bufsz < 0) return 1; // Bad format? buf = (char*)malloc(hdr_bufsz + msg_bufsz + 1); @@ -413,7 +415,8 @@ int __debug(const char *func, const int line, sz = sprintf(buf, hdr_fmt, HDR_ARGS); if(sz < 0) return 1; // Unknown error - sz = vsprintf(buf + sz, fmt, va); + va_copy(vacpy, va); + sz = vsprintf(buf + sz, fmt, vacpy); if(sz < 0) return 1; // Unknown error va_end(va); -- cgit v1.2.3