summaryrefslogtreecommitdiff
path: root/gdb/top.c
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@gnu.org>2001-08-27 22:39:56 +0000
committerMark Kettenis <kettenis@gnu.org>2001-08-27 22:39:56 +0000
commitdfbd73589ebef873cfc401cba17c7792b0aa26de (patch)
tree40dde8dcb8780ff0cade998857c37c23361097fa /gdb/top.c
parent039a0a12de76b9aa7c1a99de786798b62374a047 (diff)
downloadgdb-dfbd73589ebef873cfc401cba17c7792b0aa26de.tar.gz
* event-top.c (async_stop_sig) [HAVE_SIGPROCMASK]: Some
gratuitious whitespace changes. [!HAVE_SIGPROCMASK]: Call sigsetmask if HAVE_SIGSETMASK is defined. * top.c: Remove redundant logic to define HAVE_SIGSETMASK. (sigsetmask) Don't define macro. (stop_sig) [HAVE_SIGPROCMASK]: Add bit of code snatched from async_stop_sig from event-top.c. [!HAVE_SIGPROCMASK]: Call sigsetmask if HAVE_SIGSETMASK is defined. * configure.in (AC_CHECK_FUNCS): Put functions in alphabetical order. Add sigsetmask. (AC_FUNC_VFORK, AC_FUNC_ALLOCA): Reorder such that they're in alphabetical order. * config/xm-aix4.h, config/alpha/xm-alphalinux.h, config/i386/xm-cygwin.h, config/rs6000/xm-rs6000.h (HAVE_SIGSETMASK): Remove. * aclocal.m4, config.in, configure
Diffstat (limited to 'gdb/top.c')
-rw-r--r--gdb/top.c22
1 files changed, 9 insertions, 13 deletions
diff --git a/gdb/top.c b/gdb/top.c
index 33a853b7d3d..5d644dc00b4 100644
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -178,19 +178,6 @@ static void stop_sig (int);
#endif
#endif
-/* Some System V have job control but not sigsetmask(). */
-#if !defined (HAVE_SIGSETMASK)
-#if !defined (USG)
-#define HAVE_SIGSETMASK 1
-#else
-#define HAVE_SIGSETMASK 0
-#endif
-#endif
-
-#if 0 == (HAVE_SIGSETMASK)
-#define sigsetmask(n)
-#endif
-
/* Hooks for alternate command interfaces. */
/* Called after most modules have been initialized, but before taking users
@@ -922,7 +909,16 @@ stop_sig (int signo)
{
#if STOP_SIGNAL == SIGTSTP
signal (SIGTSTP, SIG_DFL);
+#if HAVE_SIGPROCMASK
+ {
+ sigset_t zero;
+
+ sigemptyset (&zero);
+ sigprocmask (SIG_SETMASK, &zero, 0);
+ }
+#elif HAVE_SIGSETMASK
sigsetmask (0);
+#endif
kill (getpid (), SIGTSTP);
signal (SIGTSTP, stop_sig);
#else