ID:               24909
 User updated by:  a0 at hush dot com
 Reported By:      a0 at hush dot com
-Status:           Feedback
+Status:           Open
 Bug Type:         Math related
 Operating System: solaris 8
 PHP Version:      4.3.2
 New Comment:

i used the cli binary in both cases


Previous Comments:
------------------------------------------------------------------------

[2003-08-02 15:00:52] [EMAIL PROTECTED]

I've tried the ZTS version on both Linux & Windows and it worked
perfectly in both cases. Did you run test via the nsapi module or using
PHP cli or cgi binaries?

------------------------------------------------------------------------

[2003-08-02 13:55:00] a0 at hush dot com

thanks for the response.

i have downloaded 4.3.3RC2 and tried it.

first, i configured it using no args.  after i compiled
it, the rand() function behaves as expected, even with
a range specified.  this works.

i then configured it with --with-nsapi=/usr/local/iws41,
which is what we need to use the module with our
webserver.  after i compiled it, the cli program now
returns a 0 whenever a range is specified to rand().

i have not really looked through the code, but i would
guess this has something to do with the fact that php
is built with -DZTS in the second scenario (a different
random function is used in rand.c when this is
defined).

------------------------------------------------------------------------

[2003-08-02 12:46:58] [EMAIL PROTECTED]

I've asked a number of people to replicate the problem, however they
were unable to do so using latest PHP and Solaris 8 & 9. Please try the
latest snapshot of 4.3.3 and see if the problem persists.

------------------------------------------------------------------------

[2003-08-01 14:37:22] a0 at hush dot com

Description:
------------
when using the rand function with php 4.3.2 on solaris 8, it will
return a random value as expected if no range is specified.  if a
range
is specified it will always return the low value of the range.

i'm building the module with -DZTS, and it is being loaded into
IWS4.1.

i've modified the code so it works by changing line 36 of
php_rand.h from
#if HAVE_LRAND48
to
#if (HAVE_LRAND48 && !sun)
so PHP_RAND_MAX will get a value of RAND_MAX.

Reproduce code:
---------------
<?
$r = rand();
echo "$r\n";
$r = rand(0, 100);
echo "$r\n";
?>


Expected result:
----------------
24384
0

(it will always return 0)



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=24909&edit=1

Reply via email to