]> git.ozlabs.org Git - ccan/blobdiff - ccan/tal/test/run-overflow.c
base64: fix for unsigned chars (e.g. ARM).
[ccan] / ccan / tal / test / run-overflow.c
index c5daf97d2794b99966dd59e959cdab7d649be87f..d1919c1cceefcc65702fd5bf65a2ef015c30f7d7 100644 (file)
@@ -4,7 +4,7 @@
 
 static int error_count;
 
-static void my_error(const char *msg)
+static void my_error(const char *msg UNNEEDED)
 {
        error_count++;
 }
@@ -32,42 +32,42 @@ int main(void)
        origpi = tal_arr(NULL, int, 100);
        ok1(origpi);
        ok1(error_count == 0);
-       pi = tal_dup(NULL, int, origpi, (size_t)-1, 0);
+       pi = tal_dup_arr(NULL, int, origpi, (size_t)-1, 0);
        ok1(!pi);
        ok1(error_count == 1);
-       pi = tal_dup(NULL, int, origpi, 0, (size_t)-1);
+       pi = tal_dup_arr(NULL, int, origpi, 0, (size_t)-1);
        ok1(!pi);
        ok1(error_count == 2);
 
-       pi = tal_dup(NULL, int, origpi, (size_t)-1UL / sizeof(int),
+       pi = tal_dup_arr(NULL, int, origpi, (size_t)-1UL / sizeof(int),
                     (size_t)-1UL / sizeof(int));
        ok1(!pi);
        ok1(error_count == 3);
        /* This will still overflow when tal_hdr is added. */
-       pi = tal_dup(NULL, int, origpi, (size_t)-1UL / sizeof(int) / 2,
+       pi = tal_dup_arr(NULL, int, origpi, (size_t)-1UL / sizeof(int) / 2,
                     (size_t)-1UL / sizeof(int) / 2);
        ok1(!pi);
        ok1(error_count == 4);
-       ok1(tal_first(NULL) == origpi && !tal_next(NULL, origpi));
+       ok1(tal_first(NULL) == origpi && !tal_next(origpi) && !tal_first(origpi));
        tal_free(origpi);
 
        /* Now, check that with taltk() we free old one on failure. */
        origpi = tal_arr(NULL, int, 100);
        error_count = 0;
-       pi = tal_dup(NULL, int, take(origpi), (size_t)-1, 0);
+       pi = tal_dup_arr(NULL, int, take(origpi), (size_t)-1, 0);
        ok1(!pi);
        ok1(error_count == 1);
 
        origpi = tal_arr(NULL, int, 100);
        error_count = 0;
-       pi = tal_dup(NULL, int, take(origpi), 0, (size_t)-1);
+       pi = tal_dup_arr(NULL, int, take(origpi), 0, (size_t)-1);
        ok1(!pi);
        ok1(error_count == 1);
        ok1(!tal_first(NULL));
 
        origpi = tal_arr(NULL, int, 100);
        error_count = 0;
-       pi = tal_dup(NULL, int, take(origpi), (size_t)-1UL / sizeof(int),
+       pi = tal_dup_arr(NULL, int, take(origpi), (size_t)-1UL / sizeof(int),
                     (size_t)-1UL / sizeof(int));
        ok1(!pi);
        ok1(error_count == 1);
@@ -76,7 +76,7 @@ int main(void)
        origpi = tal_arr(NULL, int, 100);
        error_count = 0;
        /* This will still overflow when tal_hdr is added. */
-       pi = tal_dup(NULL, int, take(origpi), (size_t)-1UL / sizeof(int) / 2,
+       pi = tal_dup_arr(NULL, int, take(origpi), (size_t)-1UL / sizeof(int) / 2,
                     (size_t)-1UL / sizeof(int) / 2);
        ok1(!pi);
        ok1(error_count == 1);
@@ -94,5 +94,6 @@ int main(void)
        ok1(error_count == 3);
        tal_free(origpi);
 
+       tal_cleanup();
        return exit_status();
 }