ruby-changes:27105
From: usa <ko1@a...>
Date: Fri, 8 Feb 2013 20:04:57 +0900 (JST)
Subject: [ruby-changes:27105] usa:r39157 (trunk): * array.c (rb_ary_dup): reverted r39004. see [Bug #7768], and the
usa 2013-02-08 19:58:35 +0900 (Fri, 08 Feb 2013) New Revision: 39157 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=39157 Log: * array.c (rb_ary_dup): reverted r39004. see [Bug #7768], and the release manager finailly decided to revert it. Modified files: trunk/ChangeLog trunk/array.c trunk/test/ruby/test_array.rb Index: array.c =================================================================== --- array.c (revision 39156) +++ array.c (revision 39157) @@ -1778,8 +1778,7 @@ rb_ary_empty_p(VALUE ary) https://github.com/ruby/ruby/blob/trunk/array.c#L1778 VALUE rb_ary_dup(VALUE ary) { - VALUE ary_class = rb_obj_class(ary); - VALUE dup = ary_new(ary_class ? ary_class : rb_cArray, RARRAY_LEN(ary)); + VALUE dup = rb_ary_new2(RARRAY_LEN(ary)); MEMCPY(RARRAY_PTR(dup), RARRAY_PTR(ary), VALUE, RARRAY_LEN(ary)); ARY_SET_LEN(dup, RARRAY_LEN(ary)); return dup; Index: ChangeLog =================================================================== --- ChangeLog (revision 39156) +++ ChangeLog (revision 39157) @@ -1,3 +1,8 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1 +Fri Feb 8 19:56:54 2013 NAKAMURA Usaku <usa@r...> + + * array.c (rb_ary_dup): reverted r39004. see [Bug #7768], and + release manager finailly decided to revert it. + Fri Feb 8 16:09:45 2013 Nobuyoshi Nakada <nobu@r...> * eval.c (rb_ensure): preserve errinfo accross ensure proc before Index: test/ruby/test_array.rb =================================================================== --- test/ruby/test_array.rb (revision 39156) +++ test/ruby/test_array.rb (revision 39157) @@ -2283,11 +2283,4 @@ class TestArray < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/ruby/test_array.rb#L2283 assert_include([4, 7], a.bsearch {|x| (2**100).coerce((1 - x / 4) * (2**100)).first }) end - - def test_array_uniq_returns_same_class # [ruby-core:51792] - klass = Class.new(Array) - assert_equal klass, klass.new(2).uniq.class - assert_equal klass, klass.new(1).uniq.class - assert_equal klass, klass.new(0).uniq.class - end end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/