aboutsummaryrefslogtreecommitdiffstats
path: root/libtest/libtest_free.c
diff options
context:
space:
mode:
authorMattias Andrée <m@maandree.se>2026-05-14 15:55:33 +0200
committerMattias Andrée <m@maandree.se>2026-05-14 15:55:33 +0200
commit4e6f25806e3c9fa4753ce959ef990167796acd32 (patch)
treee641de9953f5b58afc1f36efe9c42a0d20254cd2 /libtest/libtest_free.c
parentFix libtest and add file descriptor leak detection (diff)
downloadlibrecrypt-4e6f25806e3c9fa4753ce959ef990167796acd32.tar.gz
librecrypt-4e6f25806e3c9fa4753ce959ef990167796acd32.tar.bz2
librecrypt-4e6f25806e3c9fa4753ce959ef990167796acd32.tar.xz
Tests and fixes
Signed-off-by: Mattias Andrée <m@maandree.se>
Diffstat (limited to 'libtest/libtest_free.c')
-rw-r--r--libtest/libtest_free.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libtest/libtest_free.c b/libtest/libtest_free.c
index 3e84ba6..bdc214b 100644
--- a/libtest/libtest_free.c
+++ b/libtest/libtest_free.c
@@ -57,6 +57,16 @@ libtest_free(void *ptr, enum libtest_zero_check zero_checking)
break;
}
}
+ if (!memory_zeroed && mem->backtrace) {
+ libtest_malloc_internal_usage++;
+ inside_free = 1;
+ fprintf(stderr, "Memory not zeroed out before deallocation: %p\n", ptr);
+#ifdef WITH_BACKTRACE
+ libtest_print_backtrace(stderr, "\tAllocated at ", "\t at ",
+ 0u, mem->backtrace, NULL);
+#endif
+ inside_free = 0;
+ }
assert(memory_zeroed);
}