c-stack: fix regression on cygwin when libsigsegv is present
authorEric Blake <eblake@redhat.com>
Tue, 25 Jan 2011 22:14:14 +0000 (15:14 -0700)
committerEric Blake <eblake@redhat.com>
Tue, 25 Jan 2011 22:14:14 +0000 (15:14 -0700)
* lib/c-stack.c (die): Don't flatten error if sigsegv is present.

Signed-off-by: Eric Blake <eblake@redhat.com>
ChangeLog
lib/c-stack.c

index ab1ad1e..5f8c93e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-01-25  Eric Blake  <eblake@redhat.com>
+
+       c-stack: fix regression on cygwin when libsigsegv is present
+       * lib/c-stack.c (die): Don't flatten error if sigsegv is present.
+
 2011-01-24  Bruno Haible  <bruno@clisp.org>
 
        vma-iter: Avoid empty intervals.
index bff346b..7f0f488 100644 (file)
@@ -109,12 +109,12 @@ static void
 die (int signo)
 {
   char const *message;
-#if !SIGINFO_WORKS
+#if !SIGINFO_WORKS && !HAVE_LIBSIGSEGV
   /* We can't easily determine whether it is a stack overflow; so
      assume that the rest of our program is perfect (!) and that
      this segmentation violation is a stack overflow.  */
   signo = 0;
-#endif /* !SIGINFO_WORKS */
+#endif /* !SIGINFO_WORKS && !HAVE_LIBSIGSEGV */
   segv_action (signo);
   message = signo ? program_error_message : stack_overflow_message;
   ignore_value (write (STDERR_FILENO, program_name, strlen (program_name)));