about summary refs log tree commit diff
path: root/nptl
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-01-28 06:46:50 +0000
committerUlrich Drepper <drepper@redhat.com>2003-01-28 06:46:50 +0000
commit1fc469088e3c80f03d37b2e6464280799aec0041 (patch)
treeaf233516715d805be036364119899ef3113daf6a /nptl
parent68ff8426c6b8cf5dd93f2dd151ab21cb83fa990b (diff)
downloadglibc-1fc469088e3c80f03d37b2e6464280799aec0041.tar.gz
glibc-1fc469088e3c80f03d37b2e6464280799aec0041.tar.xz
glibc-1fc469088e3c80f03d37b2e6464280799aec0041.zip
Update.
	* stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
	instead of __libc_cleanup_region_start and _IO_cleanup_region_end
	instead of __libc_cleanup_region_end.

	* sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
	as first parameter to __libc_cleanup_region_start.
Diffstat (limited to 'nptl')
-rw-r--r--nptl/sysdeps/pthread/bits/libc-lock.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/nptl/sysdeps/pthread/bits/libc-lock.h b/nptl/sysdeps/pthread/bits/libc-lock.h
index e4b5b802ee..f19281e999 100644
--- a/nptl/sysdeps/pthread/bits/libc-lock.h
+++ b/nptl/sysdeps/pthread/bits/libc-lock.h
@@ -348,12 +348,17 @@ typedef pthread_key_t __libc_key_t;
 /* Start critical region with cleanup.  */
 #define __libc_cleanup_region_start(DOIT, FCT, ARG) \
   { struct _pthread_cleanup_buffer _buffer;				      \
-    int _avail = PTF(_pthread_cleanup_push_defer) != NULL;		      \
-    if (_avail) {							      \
-      PTF(_pthread_cleanup_push_defer) (&_buffer, FCT, ARG);		      \
-    } else if (DOIT) {							      \
-      _buffer.__routine = (FCT);					      \
-      _buffer.__arg = (ARG);						      \
+    int _avail;								      \
+    if (DOIT) {								      \
+      _avail = PTF(_pthread_cleanup_push_defer) != NULL;		      \
+      if (_avail) {							      \
+	PTF(_pthread_cleanup_push_defer) (&_buffer, FCT, ARG);		      \
+      } else {								      \
+	_buffer.__routine = (FCT);					      \
+	_buffer.__arg = (ARG);						      \
+      }									      \
+    } else {								      \
+      _avail = 0;							      \
     }
 
 /* End critical region with cleanup.  */