From 7318a6db760e28e023fec51375f3efdf9e8fb416 Mon Sep 17 00:00:00 2001 From: matz Date: Tue, 18 Jul 2006 07:54:26 +0000 Subject: [PATCH] * eval.c (yield_under_i): argument should be passed in avalue from. [ruby-dev:29044] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ eval.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index d423b9827c..d9e68459d6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Jul 18 16:52:29 2006 Yukihiro Matsumoto + + * eval.c (yield_under_i): argument should be passed in avalue + from. [ruby-dev:29044] + Tue Jul 18 15:49:42 2006 Yukihiro Matsumoto * pack.c (pack_unpack): propagate association array to copied diff --git a/eval.c b/eval.c index 151a4f1b86..aed3565c76 100644 --- a/eval.c +++ b/eval.c @@ -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 */