diff options
author | Jason Evans <jasone@canonware.com> | 2013-10-20 21:07:18 (GMT) |
---|---|---|
committer | Jason Evans <jasone@canonware.com> | 2013-10-20 21:07:18 (GMT) |
commit | 8edaf86b67579f480343f720b89704456a20d1d6 (patch) | |
tree | 88b79a2e612586362aaaf7c6bdb8a38d3674b41a /test/thread_arena.c | |
parent | dda90f59e2b67903668a2799970f64df163e9ccf (diff) | |
download | jemalloc-8edaf86b67579f480343f720b89704456a20d1d6.zip jemalloc-8edaf86b67579f480343f720b89704456a20d1d6.tar.gz jemalloc-8edaf86b67579f480343f720b89704456a20d1d6.tar.bz2 |
Fix dangerous casts in tests.
Fix dangerous casts of int variables to pointers in thread join function
calls. On LP64 systems, int and pointers are different sizes, so
writes can corrupt memory.
Diffstat (limited to 'test/thread_arena.c')
-rw-r--r-- | test/thread_arena.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/test/thread_arena.c b/test/thread_arena.c index c5a21fa..6b9bc9c 100644 --- a/test/thread_arena.c +++ b/test/thread_arena.c @@ -72,8 +72,12 @@ main(void) (void *)&arena_ind); } - for (i = 0; i < NTHREADS; i++) - je_thread_join(threads[i], (void *)&ret); + for (i = 0; i < NTHREADS; i++) { + intptr_t join_ret; + je_thread_join(threads[i], (void *)&join_ret); + if (join_ret != 0) + ret = 1; + } label_return: malloc_printf("Test end\n"); |