diff options
Diffstat (limited to 'client/util.c')
-rw-r--r-- | client/util.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/client/util.c b/client/util.c index c35cf8f4..1d83e518 100644 --- a/client/util.c +++ b/client/util.c @@ -24,7 +24,7 @@ vlog(const char *msg, va_list args) int n = vsnprintf(buf, sizeof(buf), msg, args); if (n < 0) snprintf(buf, sizeof(buf), "???"); - if (n >= sizeof(buf)) + else if (n >= (int) sizeof(buf)) snprintf(buf + sizeof(buf) - 100, 100, " ... <too long>"); fputs(buf, stderr); fputc('\n', stderr); @@ -40,6 +40,7 @@ bug(const char *msg, ...) fputs("Internal error: ", stderr); vlog(msg, args); vfprintf(stderr, msg, args); + va_end(args); exit(1); } @@ -51,5 +52,6 @@ die(const char *msg, ...) va_start(args, msg); cleanup(); vlog(msg, args); + va_end(args); exit(1); } |