summaryrefslogtreecommitdiffstats
path: root/newlib/libc/stdlib/__call_atexit.c
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2010-04-06 20:20:36 +0000
committerJeff Johnston <jjohnstn@redhat.com>2010-04-06 20:20:36 +0000
commit5f46e4094fb4d3399125a1e8651646913718b46f (patch)
tree904f6460ec18922cb35cc306d38fb46b3e221089 /newlib/libc/stdlib/__call_atexit.c
parent385b0add19ef049e4b33acf86e32c1640a87f39d (diff)
downloadcygnal-5f46e4094fb4d3399125a1e8651646913718b46f.tar.gz
cygnal-5f46e4094fb4d3399125a1e8651646913718b46f.tar.bz2
cygnal-5f46e4094fb4d3399125a1e8651646913718b46f.zip
2010-04-06 Dave Korn <dave.korn.cygwin@googlemail.com>
* libc/stdlib/__atexit.c (__atexit_lock): Initialise as recursive rather than non-recursive lock type. (__register_exitproc): Use recursive locking APIs on it. * libc/stdlib/__call_atexit.c (__call_exitprocs): Likewise.
Diffstat (limited to 'newlib/libc/stdlib/__call_atexit.c')
-rw-r--r--newlib/libc/stdlib/__call_atexit.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/newlib/libc/stdlib/__call_atexit.c b/newlib/libc/stdlib/__call_atexit.c
index 5365f32e9..813c34da6 100644
--- a/newlib/libc/stdlib/__call_atexit.c
+++ b/newlib/libc/stdlib/__call_atexit.c
@@ -33,7 +33,7 @@ _DEFUN (__call_exitprocs, (code, d),
#ifndef __SINGLE_THREAD__
- __lock_acquire(__atexit_lock);
+ __lock_acquire_recursive(__atexit_lock);
#endif
restart:
@@ -115,7 +115,7 @@ _DEFUN (__call_exitprocs, (code, d),
#endif
}
#ifndef __SINGLE_THREAD__
- __lock_release(__atexit_lock);
+ __lock_release_recursive(__atexit_lock);
#endif
}