summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--sysdeps/posix/signal.c5
2 files changed, 5 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 433dbcae52..667b074918 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2000-09-06  Ulrich Drepper  <drepper@redhat.com>
 
+	* sysdeps/posix/signal.c: Add sig to act.sa_mask for completeness.
+
 	* stdlib/Makefile (tests): Add tst-bsearch.
 	* stdlib/tst-bsearch.c: New file.
 
diff --git a/sysdeps/posix/signal.c b/sysdeps/posix/signal.c
index 2e0cf64de3..b1c3258b08 100644
--- a/sysdeps/posix/signal.c
+++ b/sysdeps/posix/signal.c
@@ -1,5 +1,5 @@
 /* BSD-like signal function.
-   Copyright (C) 1991, 1992, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1992, 1996, 1997, 2000 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
@@ -40,7 +40,8 @@ __bsd_signal (sig, handler)
     }
 
   act.sa_handler = handler;
-  if (__sigemptyset (&act.sa_mask) < 0)
+  if (__sigemptyset (&act.sa_mask) < 0
+      || __sigaddset (&act.sa_mask, sig) < 0)
     return SIG_ERR;
   act.sa_flags = __sigismember (&_sigintr, sig) ? 0 : SA_RESTART;
   if (__sigaction (sig, &act, &oact) < 0)