diff options
| author | Mattias Andrée <m@maandree.se> | 2026-05-14 15:55:33 +0200 |
|---|---|---|
| committer | Mattias Andrée <m@maandree.se> | 2026-05-14 15:55:33 +0200 |
| commit | 4e6f25806e3c9fa4753ce959ef990167796acd32 (patch) | |
| tree | e641de9953f5b58afc1f36efe9c42a0d20254cd2 /libtest/libtest_print_backtrace.c | |
| parent | Fix libtest and add file descriptor leak detection (diff) | |
| download | librecrypt-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_print_backtrace.c')
| -rw-r--r-- | libtest/libtest_print_backtrace.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libtest/libtest_print_backtrace.c b/libtest/libtest_print_backtrace.c index e595131..7bc465c 100644 --- a/libtest/libtest_print_backtrace.c +++ b/libtest/libtest_print_backtrace.c @@ -19,6 +19,7 @@ libtest_print_backtrace(FILE *fp, const char *prefix, const char *indent, size_t unw_context_t context; Dwarf_Addr ip; size_t i; + unsigned int old_alarm; #if defined(HAVE_LINE_INFO) Dwfl_Callbacks callbacks; char *debuginfo_path = NULL; @@ -32,6 +33,9 @@ libtest_print_backtrace(FILE *fp, const char *prefix, const char *indent, size_t if (recursion_guard) return; + + old_alarm = alarm(1u); + saved_errno = errno; recursion_guard = 1; libtest_malloc_internal_usage++; @@ -121,6 +125,8 @@ out: libtest_malloc_internal_usage--; recursion_guard = 0; errno = saved_errno; + + alarm(old_alarm); } |
