diff options
Diffstat (limited to 'hash.c')
-rw-r--r-- | hash.c | 8 |
1 files changed, 2 insertions, 6 deletions
@@ -273,14 +273,10 @@ rb_objid_hash(st_index_t index) static st_index_t objid_hash(VALUE obj) { - VALUE object_id = rb_obj_id(obj); - if (!FIXNUM_P(object_id)) - object_id = rb_big_hash(object_id); - #if SIZEOF_LONG == SIZEOF_VOIDP - return (st_index_t)st_index_hash((st_index_t)NUM2LONG(object_id)); + return (st_index_t)st_index_hash((st_index_t)NUM2LONG(rb_obj_id(obj))); #elif SIZEOF_LONG_LONG == SIZEOF_VOIDP - return (st_index_t)st_index_hash((st_index_t)NUM2LL(object_id)); + return (st_index_t)st_index_hash((st_index_t)NUM2LL(rb_obj_id(obj))); #endif } |