summaryrefslogtreecommitdiff
path: root/libc/stdlib/exit.c
diff options
context:
space:
mode:
Diffstat (limited to 'libc/stdlib/exit.c')
-rw-r--r--libc/stdlib/exit.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libc/stdlib/exit.c b/libc/stdlib/exit.c
index e9a2139f4..2e86caa2d 100644
--- a/libc/stdlib/exit.c
+++ b/libc/stdlib/exit.c
@@ -33,6 +33,9 @@ attribute_hidden
__run_exit_handlers (int status, struct exit_function_list **listp,
bool run_list_atexit)
{
+ /* First, call the TLS destructors. */
+ __call_tls_dtors ();
+
/* We do it this way to handle recursive calls to exit () made by
the functions registered with `atexit' and `on_exit'. We call
everyone on the list and use the status value in the last