com php-src: Fixed if/else if ordering: Zend/zend_operators .h

From: Date: Wed, 17 Sep 2014 19:41:20 +0000
Subject: com php-src: Fixed if/else if ordering: Zend/zend_operators .h
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-81829@lists.php.net to get a copy of this message
Commit: 545c296ef4b5ffdb1cf59583c55129f08d75601b Author: Andrea Faulds <ajf@ajf.me> Wed, 17 Sep 2014 20:41:20 +0100 Parents: 7f51d73bb2aef3fb8b50b6a7e76ebb11f86813fa Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=545c296ef4b5ffdb1cf59583c55129f08d75601b Log: Fixed if/else if ordering Changed paths: M Zend/zend_operators.h Diff: diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h index 256429d..bf35f35 100644 --- a/Zend/zend_operators.h +++ b/Zend/zend_operators.h @@ -83,7 +83,9 @@ static zend_always_inline zend_long zend_dval_to_lval(double d) #elif SIZEOF_ZEND_LONG == 4 static zend_always_inline zend_long zend_dval_to_lval(double d) { - if (d > ZEND_LONG_MAX || d < ZEND_LONG_MIN) { + if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) { + return 0; + } else if (d > ZEND_LONG_MAX || d < ZEND_LONG_MIN) { double two_pow_32 = pow(2., 32.), dmod; @@ -94,16 +96,16 @@ static zend_always_inline zend_long zend_dval_to_lval(double d) dmod = ceil(dmod) + two_pow_32; } return (zend_long)(zend_ulong)dmod; - } else if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) { - return 0; } return (zend_long)d; } #else static zend_always_inline zend_long zend_dval_to_lval(double d) { + if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) { + return 0; /* >= as (double)ZEND_LONG_MAX is outside signed range */ - if (d >= ZEND_LONG_MAX || d < ZEND_LONG_MIN) { + } else if (d >= ZEND_LONG_MAX || d < ZEND_LONG_MIN) { double two_pow_64 = pow(2., 64.), dmod; @@ -114,8 +116,6 @@ static zend_always_inline zend_long zend_dval_to_lval(double d) dmod += two_pow_64; } return (zend_long)(zend_ulong)dmod; - } else if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) { - return 0; } return (zend_long)d; }

« previous php.cvs (#81829) next »