summaryrefslogtreecommitdiffhomepage
path: root/mrbgems
diff options
context:
space:
mode:
Diffstat (limited to 'mrbgems')
-rw-r--r--mrbgems/mruby-random/src/random.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/mrbgems/mruby-random/src/random.c b/mrbgems/mruby-random/src/random.c
index 1fc42b854..67c6395d7 100644
--- a/mrbgems/mruby-random/src/random.c
+++ b/mrbgems/mruby-random/src/random.c
@@ -152,6 +152,9 @@ get_opt(mrb_state* mrb)
arg = mrb_to_int(mrb, arg);
i = mrb_integer(arg);
if (i < 0) {
+ if (i == MRB_INT_MIN) {
+ mrb_raise(mrb, E_RANGE_ERROR, "integer underflow");
+ }
arg = mrb_fixnum_value(0 - i);
}
}