diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-10-16 14:17:34 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-10-16 14:17:34 +0000 |
commit | b7a0038505f797777969c248ed027b1481269cd8 (patch) | |
tree | 494d6fa7f4df254c98d06ce4cb68ceff753feedd | |
parent | 0ee11fc6a7605b1a6aeaa8799031447489b2feb3 (diff) |
signal.c: get rid of heap corruption
* signal.c (rb_sigaltstack_size): double default size to get rid
of heap corruption by alternate stack overflow in SEGV handler.
typically happened at fprintf() in control_frame_dump().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | signal.c | 2 |
2 files changed, 7 insertions, 1 deletions
@@ -1,3 +1,9 @@ +Thu Oct 16 23:17:40 2014 Nobuyoshi Nakada <[email protected]> + + * signal.c (rb_sigaltstack_size): double default size to get rid + of heap corruption by alternate stack overflow in SEGV handler. + typically happened at fprintf() in control_frame_dump(). + Thu Oct 16 22:43:12 2014 Tanaka Akira <[email protected]> * vm_backtrace.c (id2str): Fix a variable name. @@ -535,7 +535,7 @@ int rb_sigaltstack_size(void) { /* XXX: BSD_vfprintf() uses >1500KiB stack and x86-64 need >5KiB stack. */ - int size = 8192; + int size = 16*1024; #ifdef MINSIGSTKSZ if (size < MINSIGSTKSZ) |