diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-08-03 05:15:54 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-08-03 05:15:54 +0000 |
commit | 45cd729f17d6585c00241b230f2f2dd0e5e2db52 (patch) | |
tree | 70fb7df0929be692d36fa92011ef232e7fe270a2 | |
parent | 330be69e4310886cc0d54356b2273113d288d9b1 (diff) |
* numeric.c (flo_hash): normalize -0.0 to 0.0. [ruby-core:24577]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | numeric.c | 2 |
2 files changed, 6 insertions, 0 deletions
@@ -3,6 +3,10 @@ Mon Aug 3 13:05:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * array.c (rb_ary_{permutation,combination,product}): must not use ary_discard on strings. +Mon Aug 3 06:43:25 2009 Yukihiro Matsumoto <matz@ruby-lang.org> + + * numeric.c (flo_hash): normalize -0.0 to 0.0. [ruby-core:24577] + Mon Aug 3 00:32:00 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * random.c (rb_random_int): arguments have to be converted to @@ -913,6 +913,8 @@ flo_hash(VALUE num) int hash; d = RFLOAT_VALUE(num); + /* normalize -0.0 to 0.0 */ + if (d == 0.0) d = 0.0; hash = rb_memhash(&d, sizeof(d)); return INT2FIX(hash); } |