diff --git a/ChangeLog b/ChangeLog index d62fa4c3c6..cb89ce57b3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -14,6 +14,8 @@ Tue Dec 25 15:00:33 2007 Yukihiro Matsumoto * enum.c: all method but all?, any?, one? and none? passed packed multiple values to the block. + * enum.c (collect_all): should pack all values. [ruby-core:14410] + Tue Dec 25 14:57:00 2007 Nobuyoshi Nakada * common.mk (COMMONOBJS): transcode_data_*.c moved under enc/trans. diff --git a/enum.c b/enum.c index 2e1c490691..4e3ff927da 100644 --- a/enum.c +++ b/enum.c @@ -302,9 +302,9 @@ collect_i(VALUE i, VALUE ary, int argc, VALUE *argv) } static VALUE -collect_all(VALUE i, VALUE ary) +collect_all(VALUE i, VALUE ary, int argc, VALUE *argv) { - rb_ary_push(ary, i); + rb_ary_push(ary, enum_values_pack(argc, argv)); return Qnil; }