diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-12-01 21:08:31 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-12-01 21:08:31 +0000 |
commit | 4a0f14bc365e9ed5fd7da31c740935273e69a0b7 (patch) | |
tree | 873d4da548d7f88cb741103173b89e9de54ccb10 /malloc/set-freeres.c | |
parent | f0d8cfd73c91a95ac1faa6702e75bfa821d57e05 (diff) | |
download | glibc-4a0f14bc365e9ed5fd7da31c740935273e69a0b7.zip glibc-4a0f14bc365e9ed5fd7da31c740935273e69a0b7.tar.gz glibc-4a0f14bc365e9ed5fd7da31c740935273e69a0b7.tar.bz2 |
Update.
* malloc/set-freeres.c: Really use already_called variable.
Diffstat (limited to 'malloc/set-freeres.c')
-rw-r--r-- | malloc/set-freeres.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/malloc/set-freeres.c b/malloc/set-freeres.c index e73da87..814bc4a 100644 --- a/malloc/set-freeres.c +++ b/malloc/set-freeres.c @@ -16,6 +16,7 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#include <atomicity.h> #include <stdlib.h> #include <set-hooks.h> @@ -26,8 +27,8 @@ __libc_freeres (void) { /* This function might be called from different places. So better protect for multiple executions since these are fatal. */ - static int already_called; + static long int already_called; - if (!already_called) + if (compare_and_swap (&already_called, 0, 1)) RUN_HOOK (__libc_subfreeres, ()); } |