about summary refs log tree commit diff
path: root/linuxthreads
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-04-17 06:51:57 +0000
committerUlrich Drepper <drepper@redhat.com>2001-04-17 06:51:57 +0000
commit9b7ee67e0c61b046f86062ef8e2ba91f352ebcc1 (patch)
treedcecb58203979557aae009d73f6bae715029e740 /linuxthreads
parentc991a86a175546d30258447cc213b3b4cd240433 (diff)
downloadglibc-9b7ee67e0c61b046f86062ef8e2ba91f352ebcc1.tar.gz
glibc-9b7ee67e0c61b046f86062ef8e2ba91f352ebcc1.tar.xz
glibc-9b7ee67e0c61b046f86062ef8e2ba91f352ebcc1.zip
Update.
2001-04-16  Stephen L Moshier  <moshier@mediaone.net>

	* sysdeps/ieee754/flt-32/e_asinf.c (pio2_hi, pio2_lo, pio4_hi):
	Correct the values. (pSx, qSx): Replace by shorter approximation.
	Use f suffix on float constants.

	* sysdeps/ieee754/ldbl-128/k_tanl.c: New file.
	Contributed by Stephen L Moshier <moshier@mediaone.net>.
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog6
-rw-r--r--linuxthreads/signals.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index ebad33038b..6f579267cd 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,9 @@
+2001-04-16  Ulrich Drepper  <drepper@redhat.com>
+
+	* signals.c (sigwait): NSIG is no signal number.  Block all
+	signals while in signal handler for signals in SET.
+	Patch by Manfred Spraul <manfred@colorfullife.com>.
+
 2001-04-12  Ulrich Drepper  <drepper@redhat.com>
 
 	* tst-cancel.c: Disable most tests.  Add new test where all
diff --git a/linuxthreads/signals.c b/linuxthreads/signals.c
index 714e346fab..8a0dabf0e3 100644
--- a/linuxthreads/signals.c
+++ b/linuxthreads/signals.c
@@ -188,7 +188,7 @@ int sigwait(const sigset_t * set, int * sig)
      signals in set is unspecified." */
   sigfillset(&mask);
   sigdelset(&mask, __pthread_sig_cancel);
-  for (s = 1; s <= NSIG; s++) {
+  for (s = 1; s < NSIG; s++) {
     if (sigismember(set, s) &&
         s != __pthread_sig_restart &&
         s != __pthread_sig_cancel &&
@@ -198,7 +198,7 @@ int sigwait(const sigset_t * set, int * sig)
           sighandler[s].old == (arch_sighandler_t) SIG_DFL ||
           sighandler[s].old == (arch_sighandler_t) SIG_IGN) {
         sa.sa_handler = pthread_null_sighandler;
-        sigemptyset(&sa.sa_mask);
+        sigfillset(&sa.sa_mask);
         sa.sa_flags = 0;
         sigaction(s, &sa, NULL);
       }