summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--enum.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 8c6fcf5927..530a93b8dc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Fri Nov 9 13:57:50 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * enum.c (each_with_index_i): use rb_yield_values() for
+ compatibility with Enumerator#with_index(). a patch from Yusuke
+ ENDOH <mame AT tsg.ne.jp>. [ruby-dev:32195]
+
Fri Nov 9 13:45:05 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* test/ruby/test_iterator.rb (TestIterator::IterTest::each):
diff --git a/enum.c b/enum.c
index 096772dd2c..b778bfea84 100644
--- a/enum.c
+++ b/enum.c
@@ -1295,7 +1295,7 @@ each_with_index_i(VALUE val, VALUE memo)
{
long n = (*(VALUE *)memo)++;
- return rb_yield(rb_ary_new3(2, val, INT2NUM(n)));
+ return rb_yield_values(2, val, INT2NUM(n));
}
/*