about summary refs log tree commit diff
path: root/nptl/eintr.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-12-21 20:05:47 +0000
committerUlrich Drepper <drepper@redhat.com>2003-12-21 20:05:47 +0000
commit33ebea17843acb1871bb4d6a71e7c7c0bbd60e35 (patch)
tree22f2fd8a0ac5dbf6d052c0463fef7e64411f8ef8 /nptl/eintr.c
parent26f0119e7a017f29b7d90678e7faa4225dfd705a (diff)
downloadglibc-33ebea17843acb1871bb4d6a71e7c7c0bbd60e35.tar.gz
glibc-33ebea17843acb1871bb4d6a71e7c7c0bbd60e35.tar.xz
glibc-33ebea17843acb1871bb4d6a71e7c7c0bbd60e35.zip
Update.
2003-12-21  Ulrich Drepper  <drepper@redhat.com>

	* Makefile (tests): Add tst-eintr5.
	* tst-eintr5.c: New file.

	* eintr.c (eintr_source): Prevent sending signal to self.

	* tst-eintr2.c (tf1): Improve error message.
Diffstat (limited to 'nptl/eintr.c')
-rw-r--r--nptl/eintr.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/nptl/eintr.c b/nptl/eintr.c
index 9e5d6af09a..933c5d81b3 100644
--- a/nptl/eintr.c
+++ b/nptl/eintr.c
@@ -42,6 +42,14 @@ eintr_source (void *arg)
 {
   struct timespec ts = { .tv_sec = 0, .tv_nsec = 500000 };
 
+  if (arg == NULL)
+    {
+      sigset_t ss;
+      sigemptyset (&ss);
+      sigaddset (&ss, the_sig);
+      pthread_sigmask (SIG_BLOCK, &ss, NULL);
+    }
+
   while (1)
     {
       if (arg != NULL)