diff --git a/ChangeLog b/ChangeLog index 0f45ae5932..66b79d950a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Tue Dec 10 23:44:42 2013 Nobuyoshi Nakada + + * array.c (rb_ary_hash): add salt to differentiate false and empty + array. [ruby-core:58993] [Bug #9231] + + * hash.c (rb_any_hash, rb_hash_hash): ditto. + Tue Dec 10 18:16:09 2013 SHIBATA Hiroshi * man/ruby.1: [DOC] Use www.ruby-toolbox.com instead of RAA. diff --git a/array.c b/array.c index e6a45e86fd..b6d8a5584c 100644 --- a/array.c +++ b/array.c @@ -3792,6 +3792,7 @@ rb_ary_hash(VALUE ary) VALUE n; h = rb_hash_start(RARRAY_LEN(ary)); + h = rb_hash_uint(h, (st_index_t)rb_ary_hash); for (i=0; i2] h.shift assert_equal({}.hash, h.hash, '[ruby-core:38650]') + bug9231 = '[ruby-core:58993] [Bug #9231]' + assert_not_equal(0, @cls[].hash, bug9231) end def test_update2