diff --git a/regress/unittests/test_helper/test_helper.c b/regress/unittests/test_helper/test_helper.c index e7a47b265..127e76c2b 100644 --- a/regress/unittests/test_helper/test_helper.c +++ b/regress/unittests/test_helper/test_helper.c @@ -1,4 +1,4 @@ -/* $OpenBSD: test_helper.c,v 1.11 2018/11/23 02:53:57 dtucker Exp $ */ +/* $OpenBSD: test_helper.c,v 1.12 2019/08/02 01:41:24 djm Exp $ */ /* * Copyright (c) 2011 Damien Miller * @@ -391,6 +391,8 @@ assert_mem(const char *file, int line, const char *a1, const char *a2, const void *aa1, const void *aa2, size_t l, enum test_predicate pred) { int r; + char *aa1_tohex = NULL; + char *aa2_tohex = NULL; if (l == 0) return; @@ -401,8 +403,12 @@ assert_mem(const char *file, int line, const char *a1, const char *a2, r = memcmp(aa1, aa2, l); TEST_CHECK_INT(r, pred); test_header(file, line, a1, a2, "STRING", pred); - fprintf(stderr, "%12s = %s (len %zu)\n", a1, tohex(aa1, MIN(l, 256)), l); - fprintf(stderr, "%12s = %s (len %zu)\n", a2, tohex(aa2, MIN(l, 256)), l); + aa1_tohex = tohex(aa1, MIN(l, 256)); + aa2_tohex = tohex(aa2, MIN(l, 256)); + fprintf(stderr, "%12s = %s (len %zu)\n", a1, aa1_tohex, l); + fprintf(stderr, "%12s = %s (len %zu)\n", a2, aa2_tohex, l); + free(aa1_tohex); + free(aa2_tohex); test_die(); } @@ -427,6 +433,7 @@ assert_mem_filled(const char *file, int line, const char *a1, size_t where = -1; int r; char tmp[64]; + char *aa1_tohex = NULL; if (l == 0) return; @@ -436,8 +443,10 @@ assert_mem_filled(const char *file, int line, const char *a1, r = memvalcmp(aa1, v, l, &where); TEST_CHECK_INT(r, pred); test_header(file, line, a1, NULL, "MEM_ZERO", pred); + aa1_tohex = tohex(aa1, MIN(l, 20)); fprintf(stderr, "%20s = %s%s (len %zu)\n", a1, - tohex(aa1, MIN(l, 20)), l > 20 ? "..." : "", l); + aa1_tohex, l > 20 ? "..." : "", l); + free(aa1_tohex); snprintf(tmp, sizeof(tmp), "(%s)[%zu]", a1, where); fprintf(stderr, "%20s = 0x%02x (expected 0x%02x)\n", tmp, ((u_char *)aa1)[where], v);