X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftap%2Ftap.c;h=0eaec9a5f852827d879553cfd50cd8bdf252f2c6;hb=53b6a92e206fbc41ca9fbd5254896517cc4b83ec;hp=6e268324446b7d1e33a7953005306b971ba1cf4b;hpb=30d3e635ecef7961777a1aa98b1bde23712d6547;p=ccan diff --git a/ccan/tap/tap.c b/ccan/tap/tap.c index 6e268324..0eaec9a5 100644 --- a/ccan/tap/tap.c +++ b/ccan/tap/tap.c @@ -23,7 +23,10 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ -#define _GNU_SOURCE +/* FIXME: The real fix is an asprintf module. */ +#ifndef _GNU_SOURCE +#define _GNU_SOURCE 1 +#endif #include #include #include @@ -67,9 +70,9 @@ _expected_tests(unsigned int tests) static void diagv(char *fmt, va_list ap) { - fputs("# ", stderr); - vfprintf(stderr, fmt, ap); - fputs("\n", stderr); + fputs("# ", stdout); + vfprintf(stdout, fmt, ap); + fputs("\n", stdout); } static void @@ -105,7 +108,8 @@ _gen_result(int ok, const char *func, char *file, unsigned int line, expansions on it */ if(test_name != NULL) { va_start(ap, test_name); - vasprintf(&local_test_name, test_name, ap); + if (vasprintf(&local_test_name, test_name, ap) < 0) + local_test_name = NULL; va_end(ap); /* Make sure the test name contains more than digits @@ -363,7 +367,8 @@ skip(unsigned int n, char *fmt, ...) LOCK; va_start(ap, fmt); - vasprintf(&skip_msg, fmt, ap); + if (vasprintf(&skip_msg, fmt, ap) < 0) + skip_msg = NULL; va_end(ap); while(n-- > 0) { @@ -386,7 +391,8 @@ todo_start(char *fmt, ...) LOCK; va_start(ap, fmt); - vasprintf(&todo_msg, fmt, ap); + if (vasprintf(&todo_msg, fmt, ap) < 0) + todo_msg = NULL; va_end(ap); todo = 1;