summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Suhr Christensen <jsc@umbraculum.org>2014-02-13 14:03:09 +0100
committerJonas Suhr Christensen <jsc@umbraculum.org>2014-02-13 14:03:09 +0100
commite3a27e83e1c2f84f5a5997dfe06cfa9e8fa5f032 (patch)
treef340a428a448dd2a2505c6aea0d8ba1708a3b4bd
parent0b293f1f2c1ac8823efba78c3ce62102db9bab59 (diff)
Trying to fix 64bit error
-rw-r--r--hugin.c7
1 files 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);