diff options
| -rw-r--r-- | src/numeric.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/numeric.c b/src/numeric.c index 2e9125fba..e1f6fb6b2 100644 --- a/src/numeric.c +++ b/src/numeric.c @@ -513,10 +513,11 @@ static mrb_value flo_finite_p(mrb_state *mrb, mrb_value num) { mrb_float value = mrb_float(num); + mrb_bool finite_p; - if (isinf(value) || isnan(value)) - return mrb_false_value(); - return mrb_true_value(); + finite_p = !(isinf(value) || isnan(value)); + + return mrb_true_or_false_value(finite_p); } /* 15.2.9.3.10 */ |
