summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-18 12:11:38 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-18 12:11:38 +0000
commit8394de7bfcb053019f96f7171c4f2f4ebbdfbe50 (patch)
tree51df55cb5e66b0464c45919b9eb737f905374a3c /vm.c
parentcd843108646b999e13cfbf04e51eca30b68850b3 (diff)
* vm.c (invoke_block): merge 2 stack overflow checks.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/vm.c b/vm.c
index 79404a3fa4..29e23b4a6f 100644
--- a/vm.c
+++ b/vm.c
@@ -550,8 +550,7 @@ invoke_block(rb_thread_t *th, rb_block_t *block, VALUE self, int argc, VALUE *ar
rb_vm_set_finish_env(th);
- CHECK_STACK_OVERFLOW(th->cfp, argc);
- CHECK_STACK_OVERFLOW(th->cfp, iseq->stack_max);
+ CHECK_STACK_OVERFLOW(th->cfp, argc + iseq->stack_max);
for (i=0; i<argc; i++) {
th->cfp->sp[i] = argv[i];