diff --git a/include/functions.inc b/include/functions.inc index 37e51681a89f355568746040b197c4934c1ced55..8ec8ea6453f30e78d2fa18baab0ac0b22ff9a361 100644 --- a/include/functions.inc +++ b/include/functions.inc @@ -2468,7 +2468,7 @@ if (!function_exists('random_int')) { { $range = $max - $min; if ($range <= 0) { - return $min; + throw new Exception('Invalid range passed to random_int'); } $log = log($range, 2); @@ -2483,7 +2483,7 @@ if (!function_exists('random_int')) { if (!$strong || ($randomBytes === FALSE)) { throw new Exception('Failed to get random bytes'); } - $rnd = unpack('C', $randomBytes)[1]; + $rnd = unpack('Q', $randomBytes)[1]; // discard irrelevant bits $rnd = $rnd & $filter; } while ($rnd >= $range);