From 5a3ab2fc180056cb14eaeae0f571421be81e371b Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 21 Mar 2003 08:03:25 +0000 Subject: Update. 2003-03-21 Ulrich Drepper * cancellation.c: Adjust for new form of compare&exchange macros. * cleanup_defer.c: Likewise. * init.c: Likewise. * libc-cancellation.c: Likewise. * old_pthread_cond_broadcast.c: Likewise. * old_pthread_cond_signal.c: Likewise. * old_pthread_cond_timedwait.c: Likewise. * old_pthread_cond_wait.c: Likewise. * pthread_cancel.c: Likewise. * pthread_create.c: Likewise. * pthread_detach.c: Likewise. * pthread_join.c: Likewise. * pthread_key_delete.c: Likewise. * pthread_setcancelstate.c: Likewise. * pthread_setcanceltype.c: Likewise. * pthread_timedjoin.c: Likewise. * pthread_tryjoin.c: Likewise. * sysdeps/pthread/createthread.c: Likewise. --- stdlib/cxa_finalize.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'stdlib') diff --git a/stdlib/cxa_finalize.c b/stdlib/cxa_finalize.c index 19d6567..792aeeb 100644 --- a/stdlib/cxa_finalize.c +++ b/stdlib/cxa_finalize.c @@ -36,8 +36,8 @@ __cxa_finalize (void *d) for (f = &funcs->fns[funcs->idx - 1]; f >= &funcs->fns[0]; --f) if ((d == NULL || d == f->func.cxa.dso_handle) /* We don't want to run this cleanup more than once. */ - && (atomic_compare_and_exchange_acq (&f->flavor, ef_free, ef_cxa) - == 0)) + && ! atomic_compare_and_exchange_bool_acq (&f->flavor, ef_free, + ef_cxa)) (*f->func.cxa.fn) (f->func.cxa.arg, 0); } -- cgit v1.1