bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: sigpending fix


From: Eric Blake
Subject: Re: sigpending fix
Date: Mon, 16 Jun 2008 22:46:55 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

Bruno Haible <bruno <at> clisp.org> writes:

> Yes you can change sigprocmask.c and fatal-signal.c to assume raise() 
nowadays.
> But it does not hurt to keep the module 'raise' in gnulib for some more time,

OK, then I'm committing this:

>From 5465a1c56211b1c9d1b60c856d27293de201232d Mon Sep 17 00:00:00 2001
From: Eric Blake <address@hidden>
Date: Mon, 16 Jun 2008 16:45:09 -0600
Subject: [PATCH] Use raise module consistently.

* modules/fatal-signal (Depends-on): Add raise.
* modules/sigprocmask (Depends-on): Likewise.
* lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
* lib/sigprocmask.c (sigprocmask): Likewise.
* m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
* m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.

Signed-off-by: Eric Blake <address@hidden>
---
 ChangeLog            |    8 ++++++++
 lib/fatal-signal.c   |    6 +-----
 lib/sigprocmask.c    |    8 +-------
 m4/fatal-signal.m4   |    5 ++---
 m4/signalblocking.m4 |    5 ++---
 modules/fatal-signal |    1 +
 modules/sigprocmask  |    1 +
 7 files changed, 16 insertions(+), 18 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 054cec0..0976ec3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2008-06-16  Eric Blake  <address@hidden>
 
+       Use raise module consistently.
+       * modules/fatal-signal (Depends-on): Add raise.
+       * modules/sigprocmask (Depends-on): Likewise.
+       * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
+       * lib/sigprocmask.c (sigprocmask): Likewise.
+       * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
+       * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
+
        Fix compliance bug in sigpending.
        * lib/sigprocmask.c (sigpending): Return pending array via
        parameter, not return value.
diff --git a/lib/fatal-signal.c b/lib/fatal-signal.c
index 5157d7c..a599f3a 100644
--- a/lib/fatal-signal.c
+++ b/lib/fatal-signal.c
@@ -1,5 +1,5 @@
 /* Emergency actions in case of a fatal signal.
-   Copyright (C) 2003-2004, 2006-2007 Free Software Foundation, Inc.
+   Copyright (C) 2003-2004, 2006-2008 Free Software Foundation, Inc.
    Written by Bruno Haible <address@hidden>, 2003.
 
    This program is free software: you can redistribute it and/or modify
@@ -162,11 +162,7 @@ fatal_signal_handler (int sig)
      signal handler's execution, the re-raised signal is delivered when this
      handler returns; otherwise it is delivered already during raise().  */
   uninstall_handlers ();
-#if HAVE_RAISE
   raise (sig);
-#else
-  kill (getpid (), sig);
-#endif
 }
 
 
diff --git a/lib/sigprocmask.c b/lib/sigprocmask.c
index e2f6d8b..bc9eae7 100644
--- a/lib/sigprocmask.c
+++ b/lib/sigprocmask.c
@@ -179,13 +179,7 @@ sigprocmask (int operation, const sigset_t *set, sigset_t 
*old_set)
 
          for (sig = 0; sig < NSIG; sig++)
            if (received[sig])
-             {
-               #if HAVE_RAISE
-               raise (sig);
-               #else
-               kill (getpid (), sig);
-               #endif
-             }
+              raise (sig);
        }
     }
   return 0;
diff --git a/m4/fatal-signal.m4 b/m4/fatal-signal.m4
index c188b14..1930e0a 100644
--- a/m4/fatal-signal.m4
+++ b/m4/fatal-signal.m4
@@ -1,5 +1,5 @@
-# fatal-signal.m4 serial 4
-dnl Copyright (C) 2003-2004, 2006 Free Software Foundation, Inc.
+# fatal-signal.m4 serial 5
+dnl Copyright (C) 2003-2004, 2006, 2008 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -8,6 +8,5 @@ AC_DEFUN([gl_FATAL_SIGNAL],
 [
   AC_REQUIRE([gt_TYPE_SIG_ATOMIC_T])
   AC_CHECK_HEADERS_ONCE(unistd.h)
-  AC_CHECK_FUNCS_ONCE(raise)
   AC_CHECK_FUNCS(sigaction)
 ])
diff --git a/m4/signalblocking.m4 b/m4/signalblocking.m4
index 199f29b..38f066d 100644
--- a/m4/signalblocking.m4
+++ b/m4/signalblocking.m4
@@ -1,5 +1,5 @@
-# signalblocking.m4 serial 6
-dnl Copyright (C) 2001-2002, 2006-2007 Free Software Foundation, Inc.
+# signalblocking.m4 serial 7
+dnl Copyright (C) 2001-2002, 2006-2008 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -39,5 +39,4 @@ AC_DEFUN([gl_PREREQ_SIGPROCMASK],
   dnl HAVE_SIGSET_T is 1 if the system lacks the sigprocmask function but has
   dnl the sigset_t type.
   AC_SUBST([HAVE_SIGSET_T])
-  AC_CHECK_FUNCS_ONCE(raise)
 ])
diff --git a/modules/fatal-signal b/modules/fatal-signal
index 4365b3a..8e8eb8a 100644
--- a/modules/fatal-signal
+++ b/modules/fatal-signal
@@ -12,6 +12,7 @@ xalloc
 stdbool
 unistd
 sigprocmask
+raise
 
 configure.ac:
 gl_FATAL_SIGNAL
diff --git a/modules/sigprocmask b/modules/sigprocmask
index 49e4fbb..e093112 100644
--- a/modules/sigprocmask
+++ b/modules/sigprocmask
@@ -8,6 +8,7 @@ m4/signalblocking.m4
 Depends-on:
 signal
 stdint
+raise
 
 configure.ac:
 gl_SIGNALBLOCKING
-- 
1.5.5.1








reply via email to

[Prev in Thread] Current Thread [Next in Thread]