summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--signal.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 21730e416e..99a38f9a04 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Nov 22 23:03:47 2008 Yuki Sonoda (Yugui) <yugui@yugui.jp>
+
+ * signal.c (ALT_STACK_SIZE): 4KB is not enough on Mac OS X.
+ Uses SIGSTKSZ.
+
Fri Nov 21 21:50:54 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* signal.c (register_sigaltstack): use alternative stack for
diff --git a/signal.c b/signal.c
index 38dd55f885..0c98237f46 100644
--- a/signal.c
+++ b/signal.c
@@ -416,7 +416,11 @@ typedef RETSIGTYPE (*sighandler_t)(int);
#ifdef POSIX_SIGNAL
#ifdef USE_SIGALTSTACK
+#ifdef SIGSTKSZ
+#define ALT_STACK_SIZE SIGSTKSZ
+#else
#define ALT_STACK_SIZE (4*1024)
+#endif
/* alternate stack for SIGSEGV */
static void register_sigaltstack() {
stack_t newSS, oldSS;