diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-11-04 01:51:18 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-11-04 01:51:18 +0000 |
commit | e4257036ec238d7185946f45bfb4370c6e0fc48b (patch) | |
tree | 0b7bde4c9addee456352b2576041f4291cdf290b | |
parent | 61982b1537a451e1150c7458677a5fb134d51457 (diff) |
pathname.c: unnormalized Fixnum value
* ext/pathname/pathname.c (path_hash): fix unnormalized Fixnum
value bug on mingw/mswin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/pathname/pathname.c | 6 |
2 files changed, 10 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Fri Nov 4 10:51:16 2016 Nobuyoshi Nakada <[email protected]> + + * ext/pathname/pathname.c (path_hash): fix unnormalized Fixnum + value bug on mingw/mswin. + Fri Nov 4 10:35:47 2016 Nobuyoshi Nakada <[email protected]> * lib/fileutils.rb (FileUtils::Entry_#copy): ensure that the diff --git a/ext/pathname/pathname.c b/ext/pathname/pathname.c index 4fe8859353..5987ccf462 100644 --- a/ext/pathname/pathname.c +++ b/ext/pathname/pathname.c @@ -155,11 +155,15 @@ path_cmp(VALUE self, VALUE other) return INT2FIX(0); } +#ifndef ST2FIX +#define ST2FIX(h) LONG2FIX((long)(h)) +#endif + /* :nodoc: */ static VALUE path_hash(VALUE self) { - return INT2FIX(rb_str_hash(get_strpath(self))); + return ST2FIX(rb_str_hash(get_strpath(self))); } /* |