diff options
author | Andreas Fischer <bantu@phpbb.com> | 2011-02-04 00:05:52 +0100 |
---|---|---|
committer | Andreas Fischer <bantu@phpbb.com> | 2011-02-04 00:05:52 +0100 |
commit | 181f2551cfc82e119d73f462268813d18de06097 (patch) | |
tree | 32f4c050de9429af0e352ff34814efd9c426f361 | |
parent | b414a4d107b3baa4b6d2f600e6f52211359ec3a5 (diff) | |
parent | d13efa41c5ec0968f9689ac17582106e0673cf8b (diff) | |
download | forums-181f2551cfc82e119d73f462268813d18de06097.tar forums-181f2551cfc82e119d73f462268813d18de06097.tar.gz forums-181f2551cfc82e119d73f462268813d18de06097.tar.bz2 forums-181f2551cfc82e119d73f462268813d18de06097.tar.xz forums-181f2551cfc82e119d73f462268813d18de06097.zip |
Merge branch 'ticket/p/10020' into develop-olympus
* ticket/p/10020:
[ticket/10020] Fix 32-bit php braindamage around INT_MIN.
[ticket/10020] Replaced (int) 0x80000000 with portable equivalent.
-rw-r--r-- | phpBB/adm/index.php | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/phpBB/adm/index.php b/phpBB/adm/index.php index 92bcf90039..dd8f4c279d 100644 --- a/phpBB/adm/index.php +++ b/phpBB/adm/index.php @@ -573,7 +573,11 @@ function validate_range($value_ary, &$error) 'BOOL' => array('php_type' => 'int', 'min' => 0, 'max' => 1), 'USINT' => array('php_type' => 'int', 'min' => 0, 'max' => 65535), 'UINT' => array('php_type' => 'int', 'min' => 0, 'max' => (int) 0x7fffffff), - 'INT' => array('php_type' => 'int', 'min' => (int) 0x80000000, 'max' => (int) 0x7fffffff), + // Do not use (int) 0x80000000 - it evaluates to different + // values on 32-bit and 64-bit systems. + // Apparently -2147483648 is a float on 32-bit systems, + // despite fitting in an int, thus explicit cast is needed. + 'INT' => array('php_type' => 'int', 'min' => (int) -2147483648, 'max' => (int) 0x7fffffff), 'TINT' => array('php_type' => 'int', 'min' => -128, 'max' => 127), 'VCHAR' => array('php_type' => 'string', 'min' => 0, 'max' => 255), |