diff options
Diffstat (limited to '0001-Fixed-bug-75514-mt_rand-returns-value-outside-min-ma.patch')
-rw-r--r-- | 0001-Fixed-bug-75514-mt_rand-returns-value-outside-min-ma.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/0001-Fixed-bug-75514-mt_rand-returns-value-outside-min-ma.patch b/0001-Fixed-bug-75514-mt_rand-returns-value-outside-min-ma.patch index 23743fe..c963933 100644 --- a/0001-Fixed-bug-75514-mt_rand-returns-value-outside-min-ma.patch +++ b/0001-Fixed-bug-75514-mt_rand-returns-value-outside-min-ma.patch @@ -53,3 +53,37 @@ index 0000000..af97b6d -- 2.9.5 +From 2b071028973782ed87e7038e56d47e9897be804a Mon Sep 17 00:00:00 2001 +From: Remi Collet <remi@php.net> +Date: Tue, 28 Nov 2017 17:42:43 +0100 +Subject: [PATCH] better fix for #75514 + +--- + ext/standard/mt_rand.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +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; +-- +2.1.4 + |