Loading...
tests/malloc_free_test.c libmalloc-374.120.1 libmalloc-474.0.13
--- libmalloc/libmalloc-374.120.1/tests/malloc_free_test.c
+++ libmalloc/libmalloc-474.0.13/tests/malloc_free_test.c
@@ -11,7 +11,7 @@
 #include <malloc/malloc.h>
 #include "../src/internal.h"
 
-T_GLOBAL_META(T_META_RUN_CONCURRENTLY(true));
+T_GLOBAL_META(T_META_RUN_CONCURRENTLY(true), T_META_TAG_XZONE);
 
 static inline void*
 t_malloc(size_t s)
@@ -83,6 +83,15 @@
 	test_malloc_free_random(SMALL_LIMIT_THRESHOLD, MEDIUM_LIMIT_THRESHOLD, 32 * 1024, 1000);
 }
 
+T_DECL(malloc_free_null, "free(NULL)")
+{
+	free(NULL);
+	T_PASS("Survived free(NULL)");
+
+	malloc_zone_free(malloc_default_zone(), NULL);
+	T_PASS("Survived malloc_zone_free(zone, NULL)");
+}
+
 #pragma mark MallocAggressiveMadvise=1
 
 T_DECL(malloc_free_tiny_aggressive_madvise, "tiny malloc and free all 16b increments with aggressive madvise",