1
0
mirror of https://github.com/php/php-src.git synced 2026-04-14 03:22:58 +02:00

Fix SIGSEGV because HAS_SRAND didn't check wether the entry existed at

all
This commit is contained in:
Jeroen van Wolffelaar
2001-09-03 01:25:24 +00:00
parent 1a68fe49cb
commit 72c7ae080b

View File

@@ -36,7 +36,7 @@
/* an ARRAY of POINTERS, not vice versa */
php_randgen_entry *php_randgen_entries[PHP_RAND_NUMRANDS];
#define PHP_HAS_SRAND(which) (php_randgen_entries[which]->srand)
#define PHP_HAS_SRAND(which) (php_randgen_entries[which] && php_randgen_entries[which]->srand)
#define PHP_SRAND(which,seed) ((*(php_randgen_entries[which]->srand))(seed))
#define PHP_RAND(which) ((*(php_randgen_entries[which]->rand))())
#define PHP_RANDMAX(which) (php_randgen_entries[which]->randmax)
@@ -48,6 +48,8 @@ PHP_MINIT_FUNCTION(rand)
{
PHP_MINIT(rand_sys)(INIT_FUNC_ARGS_PASSTHRU);
PHP_MINIT(rand_mt)(INIT_FUNC_ARGS_PASSTHRU);
/* lcg not yet implemented */
php_randgen_entries[PHP_RAND_LCG] = NULL;
}
/* TODO: check that this function is called on the start of each script