summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-02-15 01:24:20 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-02-15 01:24:20 +0000
commitffc47d9e5bd5d78600188f87a549016f1607d7fd (patch)
tree9af54570e26022d8c672d21f6c610e90ea9d0a19
parent64fc2cbb04aaa8e20cd91c932c0d5f83ce7893c4 (diff)
downloadruby-ffc47d9e5bd5d78600188f87a549016f1607d7fd.tar.gz
ruby-ffc47d9e5bd5d78600188f87a549016f1607d7fd.tar.xz
ruby-ffc47d9e5bd5d78600188f87a549016f1607d7fd.zip
* eval.c (yield_under_i): should not pass self as an argument to
the block for instance_eval. [ruby-core:07364] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@9939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--eval.c3
2 files changed, 7 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index ba6a5a9f3..d930b987e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,11 @@
+Wed Feb 15 10:09:51 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * eval.c (yield_under_i): should not pass self as an argument to
+ the block for instance_eval. [ruby-core:07364]
+
Wed Feb 15 09:20:35 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
- * eval.c (rb_obj_instance_eval): should no singleton classes for
+ * eval.c (rb_obj_instance_eval): should be no singleton classes for
true, false, and nil. [ruby-dev:28186]
Tue Feb 14 20:26:00 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
diff --git a/eval.c b/eval.c
index c2e163452..ad05cb8b6 100644
--- a/eval.c
+++ b/eval.c
@@ -6466,7 +6466,6 @@ yield_under_i(VALUE arg)
VALUE avalue = Qtrue;
if (args[0] == Qundef) {
avalue = Qfalse;
- args[0] = args[1];
}
return rb_yield_0(args[0], args[1], ruby_cbase, YIELD_PUBLIC_DEF, avalue);
}
@@ -6475,7 +6474,7 @@ yield_under_i(VALUE arg)
static VALUE
yield_under(VALUE under, VALUE self, VALUE values)
{
- VALUE args[4];
+ VALUE args[2];
args[0] = values;
args[1] = self;
return exec_under(yield_under_i, under, (VALUE)args);