diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-02-18 09:53:25 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-02-18 09:53:25 +0000 |
commit | fd411c129214b266d6a4cd55bf9784fa59c4ebd8 (patch) | |
tree | c6a70f34e4ecc6ebe0ab60bccb30bbf1c9cecbfc /eval.c | |
parent | 27cfa54f24bc48ed5b379306b3a327b5f58b0624 (diff) |
* eval.c (block_pass): "&nil" should clear block given.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -6524,7 +6524,10 @@ block_pass(self, node) volatile int safe = ruby_safe_level; if (NIL_P(block)) { - return rb_eval(self, node->nd_iter); + PUSH_ITER(ITER_NOT); + result = rb_eval(self, node->nd_iter); + POP_ITER(); + return result; } if (rb_obj_is_kind_of(block, rb_cMethod)) { block = method_proc(block); |