summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-07-30 23:13:30 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2019-07-30 23:16:34 +0900
commit5900b29fb47f443287228f0b37bb60403758120c (patch)
tree0c63ea5c41d557b1a9b8fa5d6fa7d515c28278bd
parent7dae0ec74c75b59b68451f16a0757149b0de49d2 (diff)
downloadmruby-5900b29fb47f443287228f0b37bb60403758120c.tar.gz
mruby-5900b29fb47f443287228f0b37bb60403758120c.zip
Fixed integer overflow in `lshift`.
-rw-r--r--src/numeric.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/numeric.c b/src/numeric.c
index a1299a74f..db851b06a 100644
--- a/src/numeric.c
+++ b/src/numeric.c
@@ -1119,7 +1119,7 @@ lshift(mrb_state *mrb, mrb_int val, mrb_int width)
}
else {
if ((width > NUMERIC_SHIFT_WIDTH_MAX) ||
- (val < (MRB_INT_MIN >> width))) {
+ (val <= (MRB_INT_MIN >> width))) {
#ifdef MRB_WITHOUT_FLOAT
return mrb_fixnum_value(0);
#else