diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | eval.c | 4 |
2 files changed, 8 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Tue Jul 18 16:52:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org> + + * eval.c (yield_under_i): argument should be passed in avalue + from. [ruby-dev:29044] + Tue Jul 18 15:49:42 2006 Yukihiro Matsumoto <matz@ruby-lang.org> * pack.c (pack_unpack): propagate association array to copied @@ -6481,8 +6481,10 @@ static VALUE yield_under_i(VALUE arg) { VALUE *args = (VALUE *)arg; + int flags = YIELD_PUBLIC_DEF; + if (args[0] != Qundef) flags |= YIELD_ARY_ARGS; - return rb_yield_0(args[0], args[1], ruby_cbase, YIELD_PUBLIC_DEF); + return rb_yield_0(args[0], args[1], ruby_cbase, flags); } /* block eval under the class/module context */ |