From 131fd126cddad8379741597892cdfcd5cab3a49f Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 28 Dec 2002 09:27:26 +0000 Subject: Update. 2002-12-28 Ulrich Drepper * descr.h (struct pthread): Move header.data.list to the back of the struct. * sysdeps/i386/tls.h (tcbhead_t): Move list to the back of the struct. (MULTIPLE_THREADS_OFFSET): Adjust offset. (SYSINFO_OFFSEET): Likewise. 2002-12-27 Jakub Jelinek * sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h (USE_DL_SYSINFO): Define. (DL_SYSINFO_DEFAULT): Cast to uintptr_t to avoid warnings. * sysdeps/unix/sysv/linux/i386/dl-sysdep.h (NEED_DL_SYSINFO, DL_SYSINFO_DEFAULT, DL_SYSINFO_IMPLEMENTATION): Define. (USE_DL_SYSINFO): Undef. 2002-12-22 Jakub Jelinek * Makefile (tests-reverse): Use $(objpfx)../libc.so instead of $(common-objpfx)libc.so. * tst-cancel4.c (tf_write, tf_writev): Increase buf sizes so that it is bigger than pipe buffer size even on arches with bigger page size. (tf_usleep): Cast usleep argument to useconds_t to avoid warnings. --- sysdeps/unix/common/pause.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'sysdeps/unix/common/pause.c') diff --git a/sysdeps/unix/common/pause.c b/sysdeps/unix/common/pause.c index 9a2e44e996..508a3e0b53 100644 --- a/sysdeps/unix/common/pause.c +++ b/sysdeps/unix/common/pause.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1996 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1996, 2002 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,7 +18,7 @@ #include #include - +#include /* Suspend the process until a signal arrives. This always returns -1 and sets errno to EINTR. */ @@ -26,6 +26,12 @@ int __libc_pause (void) { - return __sigpause (__sigblock (0), 0); + if (SINGLE_THREAD_P) + return __sigpause (__sigblock (0), 0); + + int oldtype = LIBC_CANCEL_ASYNC (); + int result = __sigpause (__sigblock (0), 0); + LIBC_CANCEL_RESET (oldtype); + return result; } weak_alias (__libc_pause, pause) -- cgit v1.2.3