ruby-changes:23011
From: nobu <ko1@a...>
Date: Fri, 16 Mar 2012 17:33:25 +0900 (JST)
Subject: [ruby-changes:23011] nobu:r35060 (trunk): * enum.c (enum_take): allocate buffer array before iteration, as well
nobu 2012-03-16 17:33:10 +0900 (Fri, 16 Mar 2012) New Revision: 35060 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=35060 Log: * enum.c (enum_take): allocate buffer array before iteration, as well as enum_first did. Modified files: trunk/ChangeLog trunk/enum.c Index: ChangeLog =================================================================== --- ChangeLog (revision 35059) +++ ChangeLog (revision 35060) @@ -1,5 +1,8 @@ -Fri Mar 16 15:02:35 2012 Nobuyoshi Nakada <nobu@r...> +Fri Mar 16 17:33:08 2012 Nobuyoshi Nakada <nobu@r...> + * enum.c (enum_take): allocate buffer array before iteration, as well + as enum_first did. + * enum.c (enum_first): remove duplication. Fri Mar 16 14:43:18 2012 Yuki Sonoda (Yugui) <yugui@y...> Index: enum.c =================================================================== --- enum.c (revision 35059) +++ enum.c (revision 35060) @@ -2050,7 +2050,7 @@ } if (len == 0) return rb_ary_new2(0); - result = rb_ary_new(); + result = rb_ary_new2(len); memo = NEW_MEMO(result, 0, len); rb_block_call(obj, id_each, 0, 0, take_i, (VALUE)memo); return result; -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/