cvs: php-src(PHP_4_3) / NEWS /main spprintf.c

From: Date: Mon, 29 Sep 2003 01:09:37 +0000
Subject: cvs: php-src(PHP_4_3) / NEWS /main spprintf.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-23938@lists.php.net to get a copy of this message
iliaa Sun Sep 28 21:09:37 2003 EDT Modified files: (Branch: PHP_4_3) /php-src NEWS /php-src/main spprintf.c Log: MFH: Fixed Bug #25665 (var_dump() hangs on Nan and INF). Index: php-src/NEWS diff -u php-src/NEWS:1.1247.2.410 php-src/NEWS:1.1247.2.411 --- php-src/NEWS:1.1247.2.410 Fri Sep 26 14:00:00 2003 +++ php-src/NEWS Sun Sep 28 21:09:16 2003 @@ -8,6 +8,7 @@ - Fixed memory leak in gethostbynamel() if an error occurs. (Sara) - Fixed FastCGI being unable to bind to a specific IP. (Sascha) - Fixed bug #25671 (str_replace corrupting subarrays). (Sara) +- Fixed Bug #25665 (var_dump() hangs on Nan and INF). (Ilia) - Fixed bug #25648 (xslt_set_encoding() being not detected correctly). (Jani) - Fixed bug #25636 (SNMP Session not closed on success). (Ilia, nesslage[at]mwsc[dot]edu) Index: php-src/main/spprintf.c diff -u php-src/main/spprintf.c:1.10.4.1 php-src/main/spprintf.c:1.10.4.2 --- php-src/main/spprintf.c:1.10.4.1 Tue Dec 31 11:26:27 2002 +++ php-src/main/spprintf.c Sun Sep 28 21:09:36 2003 @@ -473,6 +473,23 @@ case 'g': case 'G': + fp_num = va_arg(ap, double); + + if (zend_isnan(fp_num)) { + s = "NAN"; + s_len = 3; + break; + } else if (zend_isinf(fp_num)) { + if (fp_num > 0) { + s = "INF"; + s_len = 3; + } else { + s = "-INF"; + s_len = 4; + } + break; + } + if (adjust_precision == NO) precision = FLOAT_DIGITS; else if (precision == 0) @@ -480,8 +497,7 @@ /* * * We use &num_buf[ 1 ], so that we have room for the sign */ - s = ap_php_gcvt(va_arg(ap, double), precision, &num_buf[1], - alternate_form); + s = ap_php_gcvt(fp_num, precision, &num_buf[1], alternate_form); if (*s == '-') prefix_char = *s++; else if (print_sign)

« previous php.cvs (#23938) next »