mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* signal.c (ALT_STACK_SIZE): default minimum size is insufficient
for method calls. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
7348aa6113
commit
079505c040
2 changed files with 17 additions and 2 deletions
15
ChangeLog
15
ChangeLog
|
@ -1,3 +1,18 @@
|
|||
Thu Nov 27 15:59:16 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* gc.c (ruby_stack_check): no check if using sigaltstack.
|
||||
|
||||
* signal.c (ALT_STACK_SIZE): default minimum size is insufficient
|
||||
for method calls.
|
||||
|
||||
* signal.c (sigsegv): handles stack overflow if possible.
|
||||
|
||||
* thread.c (ruby_thread_stack_overflow): helper function to raise
|
||||
sysstack_error.
|
||||
|
||||
* thread_pthread.c (ruby_stack_overflowed_p): checks for stack
|
||||
overflow.
|
||||
|
||||
Thu Nov 27 10:40:52 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||
|
||||
* ext/bigdecimal/bigdecimal.c (BigDecimal_div2): should return
|
||||
|
|
4
signal.c
4
signal.c
|
@ -417,7 +417,7 @@ typedef RETSIGTYPE (*sighandler_t)(int);
|
|||
#ifdef USE_SIGALTSTACK
|
||||
#define SIGINFO_ARG , siginfo_t *info, void *ctx
|
||||
#ifdef SIGSTKSZ
|
||||
#define ALT_STACK_SIZE SIGSTKSZ
|
||||
#define ALT_STACK_SIZE (SIGSTKSZ*2)
|
||||
#else
|
||||
#define ALT_STACK_SIZE (4*1024)
|
||||
#endif
|
||||
|
@ -431,7 +431,7 @@ register_sigaltstack()
|
|||
if (is_altstack_defined)
|
||||
return;
|
||||
|
||||
newSS.ss_sp = malloc(ALT_STACK_SIZE * 2);
|
||||
newSS.ss_sp = malloc(ALT_STACK_SIZE);
|
||||
if (newSS.ss_sp == NULL)
|
||||
/* should handle error */
|
||||
rb_bug("register_sigaltstack. malloc error\n");
|
||||
|
|
Loading…
Reference in a new issue