com php-src: better fix for #75514: ext/standard/mt_rand.c
| From: | Remi Collet | Date: | Tue, 28 Nov 2017 16:42:43 +0000 |
| Subject: | com php-src: better fix for #75514: ext/standard/mt_rand.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-100414@lists.php.net to get a copy of this message | ||
Commit: 2b071028973782ed87e7038e56d47e9897be804a
Author: Remi Collet <remi@php.net> Tue, 28 Nov 2017 17:42:43 +0100
Parents: cf084416ddd78affa11a0b29aaf012065f74fe0b
Branches: PHP-7.1 PHP-7.2 master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=2b071028973782ed87e7038e56d47e9897be804a
Log:
better fix for #75514
Bugs:
https://bugs.php.net/75514
Changed paths:
M ext/standard/mt_rand.c
Diff:
diff --git a/ext/standard/mt_rand.c b/ext/standard/mt_rand.c
index 0a76ab8..46f52db 100644
--- a/ext/standard/mt_rand.c
+++ b/ext/standard/mt_rand.c
@@ -260,7 +260,7 @@ PHPAPI zend_long php_mt_rand_range(zend_long min, zend_long max)
* rand() allows min > max, mt_rand does not */
PHPAPI zend_long php_mt_rand_common(zend_long min, zend_long max)
{
- uint32_t n;
+ int64_t n;
if (BG(mt_rand_mode) == MT_RAND_MT19937) {
return php_mt_rand_range(min, max);
@@ -268,7 +268,7 @@ PHPAPI zend_long php_mt_rand_common(zend_long min, zend_long max)
/* Legacy mode deliberately not inside php_mt_rand_range()
* to prevent other functions being affected */
- n = php_mt_rand() >> 1;
+ n = (int64_t)php_mt_rand() >> 1;
RAND_RANGE_BADSCALING(n, min, max, PHP_MT_RAND_MAX);
return n;