summaryrefslogtreecommitdiff
path: root/Zend/zend_API.h
diff options
context:
space:
mode:
authorAndrea Faulds <ajf@ajf.me>2014-11-29 02:13:20 +0000
committerAndrea Faulds <ajf@ajf.me>2014-11-29 02:13:20 +0000
commitf90b877f4188dd24e0863456d175fc694a42f1c8 (patch)
tree3ba58a66ba63d305c3aec43619242ed2431612a4 /Zend/zend_API.h
parentd19ce51854a94d9da3f5ff24ea965928ed520688 (diff)
downloadphp-git-f90b877f4188dd24e0863456d175fc694a42f1c8.tar.gz
Refactor ZEND_LONG_MAX/MIN checks into ZEND_DOUBLE_FITS_LONG()
Diffstat (limited to 'Zend/zend_API.h')
-rw-r--r--Zend/zend_API.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_API.h b/Zend/zend_API.h
index 701c1811ec..1886f13842 100644
--- a/Zend/zend_API.h
+++ b/Zend/zend_API.h
@@ -1067,7 +1067,7 @@ static zend_always_inline int _z_param_long(zval *arg, zend_long *dest, zend_boo
if (UNEXPECTED(zend_isnan(Z_DVAL_P(arg)))) {
return 0;
}
- if (UNEXPECTED(Z_DVAL_P(arg) > ZEND_LONG_MAX || Z_DVAL_P(arg) < ZEND_LONG_MIN)) {
+ if (UNEXPECTED(!ZEND_DOUBLE_FITS_LONG(Z_DVAL_P(arg)))) {
/* Ironically, the strict parameter makes zpp *non*-strict here */
if (strict) {
*dest = (Z_DVAL_P(arg) > 0) ? ZEND_LONG_MAX : ZEND_LONG_MIN;
@@ -1086,7 +1086,7 @@ static zend_always_inline int _z_param_long(zval *arg, zend_long *dest, zend_boo
if (UNEXPECTED(zend_isnan(d))) {
return 0;
}
- if (UNEXPECTED(d > ZEND_LONG_MAX || d < ZEND_LONG_MIN)) {
+ if (UNEXPECTED(!ZEND_DOUBLE_FITS_LONG(d))) {
if (strict) {
*dest = (d > 0) ? ZEND_LONG_MAX : ZEND_LONG_MIN;
} else {