Dotan Barak, dotanba at gmail dot com git-svn-id: http://svn.metaparadigm.com/svn/json-c/trunk@23 327403b1-1117-474d-bef2-5cb71233fd97tags/json-c-0.10-20120530
@@ -1,4 +1,6 @@ | |||||
0.8 | 0.8 | ||||
* Add va_end for every va_start | |||||
Dotan Barak, dotanba at gmail dot com | |||||
* Add macros to enable compiling out debug code | * Add macros to enable compiling out debug code | ||||
Geoffrey Young, geoff at modperlcookbook dot org | Geoffrey Young, geoff at modperlcookbook dot org | ||||
* Fix bug with use of capital E in numbers with exponents | * Fix bug with use of capital E in numbers with exponents | ||||
@@ -51,6 +51,7 @@ void mc_abort(const char *msg, ...) | |||||
} else | } else | ||||
#endif | #endif | ||||
vprintf(msg, ap); | vprintf(msg, ap); | ||||
va_end(ap); | |||||
exit(1); | exit(1); | ||||
} | } | ||||
@@ -66,6 +67,7 @@ void mc_debug(const char *msg, ...) | |||||
} else | } else | ||||
#endif | #endif | ||||
vprintf(msg, ap); | vprintf(msg, ap); | ||||
va_end(ap); | |||||
} | } | ||||
} | } | ||||
@@ -79,6 +81,7 @@ void mc_error(const char *msg, ...) | |||||
} else | } else | ||||
#endif | #endif | ||||
vfprintf(stderr, msg, ap); | vfprintf(stderr, msg, ap); | ||||
va_end(ap); | |||||
} | } | ||||
void mc_info(const char *msg, ...) | void mc_info(const char *msg, ...) | ||||
@@ -91,4 +94,5 @@ void mc_info(const char *msg, ...) | |||||
} else | } else | ||||
#endif | #endif | ||||
vfprintf(stderr, msg, ap); | vfprintf(stderr, msg, ap); | ||||
va_end(ap); | |||||
} | } |
@@ -25,6 +25,7 @@ void lh_abort(const char *msg, ...) | |||||
va_list ap; | va_list ap; | ||||
va_start(ap, msg); | va_start(ap, msg); | ||||
vprintf(msg, ap); | vprintf(msg, ap); | ||||
va_end(ap); | |||||
exit(1); | exit(1); | ||||
} | } | ||||
@@ -119,8 +119,9 @@ int sprintbuf(struct printbuf *p, const char *msg, ...) | |||||
if(size == -1 || size > 127) { | if(size == -1 || size > 127) { | ||||
int ret; | int ret; | ||||
va_start(ap, msg); | va_start(ap, msg); | ||||
if((size = vasprintf(&t, msg, ap)) == -1) return -1; | |||||
size = vasprintf(&t, msg, ap); | |||||
va_end(ap); | va_end(ap); | ||||
if(size == -1) return -1; | |||||
ret = printbuf_memappend(p, t, size); | ret = printbuf_memappend(p, t, size); | ||||
free(t); | free(t); | ||||
return ret; | return ret; | ||||