From: Remi Collet Date: Mon, 4 Feb 2013 14:19:32 +0000 (+0100) Subject: Fixed bug #64142 (dval to lval different behavior on ppc64) X-Git-Tag: php-5.5.0alpha5~41^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6533094d9e4d0c85044a170d9fad9a3986a68675;p=php Fixed bug #64142 (dval to lval different behavior on ppc64) On x86_64: (long)(double)9223372036854775807+1 = -9223372036854775808 On ppc64 (long)(double)9223372036854775807-1 = 9223372036854775807 --- diff --git a/NEWS b/NEWS index 2aff180fa9..0649d9d732 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,9 @@ PHP NEWS - CLI server: . Fixed bug #64128 (buit-in web server is broken on ppc64). (Remi) +- Core: + . Fixed bug #64142 (dval to lval different behavior on ppc64). (Remi) + ?? ??? 2012, PHP 5.4.12 - Core: diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h index 02a96dd26e..93b904f3c9 100644 --- a/Zend/zend_operators.h +++ b/Zend/zend_operators.h @@ -79,7 +79,7 @@ static zend_always_inline long zend_dval_to_lval(double d) #else static zend_always_inline long zend_dval_to_lval(double d) { - if (d > LONG_MAX) { + if (d >= LONG_MAX) { return (long)(unsigned long) d; } return (long) d;