mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
random: Convert RANDOM_SEED()
from a macro to a function (#13575)
* random: Convert `RANDOM_SEED()` from a macro to a function * random: Fix GENERATE_SEED()'s prototype
This commit is contained in:
parent
06569bbd04
commit
3d4cb1da3e
1 changed files with 9 additions and 2 deletions
|
@ -37,12 +37,19 @@
|
||||||
|
|
||||||
PHPAPI double php_combined_lcg(void);
|
PHPAPI double php_combined_lcg(void);
|
||||||
|
|
||||||
|
static inline zend_long GENERATE_SEED(void)
|
||||||
|
{
|
||||||
|
zend_ulong pid;
|
||||||
|
|
||||||
# ifdef PHP_WIN32
|
# ifdef PHP_WIN32
|
||||||
# define GENERATE_SEED() (((zend_long) ((zend_ulong) time(NULL) * (zend_ulong) GetCurrentProcessId())) ^ ((zend_long) (1000000.0 * php_combined_lcg())))
|
pid = (zend_ulong) GetCurrentProcessId();
|
||||||
# else
|
# else
|
||||||
# define GENERATE_SEED() (((zend_long) ((zend_ulong) time(NULL) * (zend_ulong) getpid())) ^ ((zend_long) (1000000.0 * php_combined_lcg())))
|
pid = (zend_ulong) getpid();
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
|
return (((zend_long) ((zend_ulong) time(NULL) * pid)) ^ ((zend_long) (1000000.0 * php_combined_lcg())));
|
||||||
|
}
|
||||||
|
|
||||||
# define PHP_MT_RAND_MAX ((zend_long) (0x7FFFFFFF)) /* (1<<31) - 1 */
|
# define PHP_MT_RAND_MAX ((zend_long) (0x7FFFFFFF)) /* (1<<31) - 1 */
|
||||||
|
|
||||||
enum php_random_mt19937_mode {
|
enum php_random_mt19937_mode {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue