diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h index 20a5277d5b6..e395fd39ccc 100644 --- a/Zend/zend_operators.h +++ b/Zend/zend_operators.h @@ -79,7 +79,8 @@ 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) { + /* >= as (double)LONG_MAX is outside signed range */ + if (d >= LONG_MAX) { return (long)(unsigned long) d; } return (long) d;