mirror of
https://github.com/twigphp/Twig.git
synced 2026-09-13 02:46:29 +00:00
Bug correction: Parsing integers large than PHP_INT_MAX was generating trucated token values.
This commit is contained in:
+7
-1
@@ -221,7 +221,13 @@ class Twig_Lexer implements Twig_LexerInterface
|
||||
}
|
||||
// numbers
|
||||
elseif (preg_match(self::REGEX_NUMBER, $this->code, $match, null, $this->cursor)) {
|
||||
$this->pushToken(Twig_Token::NUMBER_TYPE, ctype_digit($match[0]) ? (int) $match[0] : (float) $match[0]);
|
||||
$number = (float)$match[0]; // floats
|
||||
if(ctype_digit($match[0])) {
|
||||
if($number<=PHP_INT_MAX) {
|
||||
$number = (int)$match[0]; // integers lower than the maximum
|
||||
}
|
||||
}
|
||||
$this->pushToken(Twig_Token::NUMBER_TYPE, $number);
|
||||
$this->moveCursor($match[0]);
|
||||
}
|
||||
// punctuation
|
||||
|
||||
Reference in New Issue
Block a user