summaryrefslogtreecommitdiff
path: root/vm_eval.c
diff options
context:
space:
mode:
authorktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-12-23 16:23:13 +0000
committerktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-12-23 16:23:13 +0000
commitdd834c683de09ae4f4ccfefbdaf4a36f20abc307 (patch)
tree9858f621b376e0d973ddfca4af6fa64fe9e126cf /vm_eval.c
parentc6cbbd6eea91906d376636458fa24ebabc122beb (diff)
* vm_eval.c (send_internal): PASS_PASSED_BLOCK_TH must be placed
just before calling rb_call0. * bootstraptest/test_flow.rb: add a test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_eval.c')
-rw-r--r--vm_eval.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/vm_eval.c b/vm_eval.c
index 44edf6f5ea..74f3e162b0 100644
--- a/vm_eval.c
+++ b/vm_eval.c
@@ -712,7 +712,6 @@ send_internal(int argc, const VALUE *argv, VALUE recv, call_type scope)
}
vid = *argv++; argc--;
- PASS_PASSED_BLOCK_TH(th);
id = rb_check_id(&vid);
if (!id) {
@@ -723,6 +722,7 @@ send_internal(int argc, const VALUE *argv, VALUE recv, call_type scope)
}
id = rb_to_id(vid);
}
+ PASS_PASSED_BLOCK_TH(th);
return rb_call0(recv, id, argc, argv, scope, self);
}