summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2002-06-22 13:29:17 +0000
committerPaul Eggert <eggert@cs.ucla.edu>2002-06-22 13:29:17 +0000
commitf8d4015e3620ad843e0a73649b2ba0cb91c2c5e5 (patch)
treebaff24c7c714e4094278f9b063f6535775ece102 /lib
parent932176da4ca083c0b07a60bd20d830b14a058a86 (diff)
downloaddiffutils-f8d4015e3620ad843e0a73649b2ba0cb91c2c5e5.tar.gz
(segv_handler, c_stack_action) [! defined SA_SIGINFO]:
Do not assume SA_SIGINFO behavior. Bug reported by Jim Meyering on NetBSD 1.5.2.
Diffstat (limited to 'lib')
-rw-r--r--lib/c-stack.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/c-stack.c b/lib/c-stack.c
index 6e724b7..095f890 100644
--- a/lib/c-stack.c
+++ b/lib/c-stack.c
@@ -277,7 +277,7 @@ static union
void *p;
} alternate_signal_stack;
-# if defined SA_ONSTACK && defined _SC_PAGESIZE
+# if defined SA_ONSTACK && defined SA_SIGINFO && defined _SC_PAGESIZE
/* Handle a segmentation violation and exit. This function is
async-signal-safe. */
@@ -363,7 +363,7 @@ c_stack_action (char * const *argv __attribute__ ((unused)),
stack_overflow_message = _("stack overflow");
{
-# if ! (defined SA_ONSTACK && defined _SC_PAGESIZE)
+# if ! (defined SA_ONSTACK && defined SA_SIGINFO && defined _SC_PAGESIZE)
return signal (SIGSEGV, die) == SIG_ERR ? -1 : 0;
# else
struct sigaction act;