about summary refs log tree commit diff
path: root/linuxthreads/signals.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-04-10 04:50:02 +0000
committerUlrich Drepper <drepper@redhat.com>2000-04-10 04:50:02 +0000
commit76f6548529dee9a7bd5a872fed31c83d44f954ba (patch)
tree3962307be957f949507c4aab03f865b11a9f14ca /linuxthreads/signals.c
parentddf0c5360c1d023f33647ac350ed8ec4cf802f1d (diff)
downloadglibc-76f6548529dee9a7bd5a872fed31c83d44f954ba.tar.gz
glibc-76f6548529dee9a7bd5a872fed31c83d44f954ba.tar.xz
glibc-76f6548529dee9a7bd5a872fed31c83d44f954ba.zip
(sigaction): Fix return value for the case SIG is one of the signals the implementation uses.
Diffstat (limited to 'linuxthreads/signals.c')
-rw-r--r--linuxthreads/signals.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/linuxthreads/signals.c b/linuxthreads/signals.c
index c044576065..452d860f92 100644
--- a/linuxthreads/signals.c
+++ b/linuxthreads/signals.c
@@ -140,7 +140,10 @@ int sigaction(int sig, const struct sigaction * act,
   if (sig == __pthread_sig_restart ||
       sig == __pthread_sig_cancel ||
       (sig == __pthread_sig_debug && __pthread_sig_debug > 0))
-    return EINVAL;
+    {
+      __set_errno (EINVAL);
+      return -1;
+    }
   if (act)
     {
       newact = *act;