Hi!

In _z_param_long in Zend/zend_API.h:

        if (EXPECTED(Z_TYPE_P(arg) == IS_LONG)) {
                if (strict && UNEXPECTED(Z_DVAL_P(arg) > LONG_MAX)) {
                        *dest = LONG_MAX;
                } else if (strict && UNEXPECTED(Z_DVAL_P(arg) < LONG_MIN)) {
                        *dest = LONG_MIN;
                } else {
                        *dest = Z_LVAL_P(arg);
                }

Note that it’s interpreting a long argument as a double. I expect this will 
probably go horribly, horribly wrong.

I don’t have /Zend karma (yet!), could this be fixed?

Thanks!
--
Andrea Faulds
http://ajf.me/





--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to