From: Edin Kadribasic Date: Mon, 3 Jun 2002 17:49:48 +0000 (+0000) Subject: Fixed array_rand() on ZTS platforms. X-Git-Tag: RELEASE_0_90~46 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e7ab5766d69b07f6c435f269d3abb9f870c41b0c;p=php Fixed array_rand() on ZTS platforms. @- Fixed array_rand() on thread-safe platforms such as Windows. (Edin) --- diff --git a/ext/standard/array.c b/ext/standard/array.c index a1c9154d43..77544a2c13 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -2878,15 +2878,7 @@ PHP_FUNCTION(array_rand) zend_hash_internal_pointer_reset_ex(Z_ARRVAL_PP(input), &pos); while (num_req_val && (key_type = zend_hash_get_current_key_ex(Z_ARRVAL_PP(input), &string_key, &string_key_len, &num_key, 0, &pos)) != HASH_KEY_NON_EXISTANT) { -#ifdef HAVE_RANDOM - randval = random(); -#else -#ifdef HAVE_LRAND48 - randval = lrand48(); -#else - randval = rand(); -#endif -#endif + randval = php_rand(TSRMLS_C); if ((double)(randval/(PHP_RAND_MAX+1.0)) < (double)num_req_val/(double)num_avail) { /* If we are returning a single result, just do it. */