Need to convert the return value of rb_big_cmp

This commit is contained in:
Kenta Murata 2021-01-06 13:39:09 +09:00
parent f289f8ae3a
commit 7da06c04b2
No known key found for this signature in database
GPG Key ID: CEFE8AFB6081B062

View File

@ -2766,7 +2766,7 @@ rb_big_convert_to_BigDecimal(VALUE val, RB_UNUSED_VAR(size_t digs), int raise_ex
assert(RB_TYPE_P(val, T_BIGNUM)); assert(RB_TYPE_P(val, T_BIGNUM));
size_t size = rb_absint_size(val, NULL); size_t size = rb_absint_size(val, NULL);
int sign = rb_big_cmp(val, INT2FIX(0)); int sign = FIX2INT(rb_big_cmp(val, INT2FIX(0)));
if (size <= sizeof(long)) { if (size <= sizeof(long)) {
if (sign < 0) { if (sign < 0) {
return rb_int64_convert_to_BigDecimal(NUM2LONG(val), digs, raise_exception); return rb_int64_convert_to_BigDecimal(NUM2LONG(val), digs, raise_exception);