MDL-58646 lib: import latest sabberworm/PHP-CSS-Parser

This version includes a fix[1] contributed by Frédéric Massart investigating
our compilation time issues, which significantly improves the speed of
processing font awesome.

Thanks, Fred!

[1] https://github.com/sabberworm/PHP-CSS-Parser/pull/120
This commit is contained in:
Dan Poltawski 2017-06-02 07:36:40 +01:00
parent 78ab4f741b
commit 2fe51fa327
2 changed files with 5 additions and 4 deletions

View File

@ -265,7 +265,7 @@ class Parser {
if (preg_match('/[0-9a-fA-F]/Su', $this->peek()) === 0) {
return $this->consume(1);
}
$sUnicode = $this->consumeExpression('/^[0-9a-fA-F]{1,6}/u');
$sUnicode = $this->consumeExpression('/^[0-9a-fA-F]{1,6}/u', 6);
if ($this->strlen($sUnicode) < 6) {
//Consume whitespace after incomplete unicode escape
if (preg_match('/\\s/isSu', $this->peek())) {
@ -565,9 +565,10 @@ class Parser {
}
}
private function consumeExpression($mExpression) {
private function consumeExpression($mExpression, $iMaxLength = null) {
$aMatches = null;
if (preg_match($mExpression, $this->inputLeft(), $aMatches, PREG_OFFSET_CAPTURE) === 1) {
$sInput = $iMaxLength !== null ? $this->peek($iMaxLength) : $this->inputLeft();
if (preg_match($mExpression, $sInput, $aMatches, PREG_OFFSET_CAPTURE) === 1) {
return $this->consume($aMatches[0][0]);
}
throw new UnexpectedTokenException($mExpression, $this->peek(5), 'expression', $this->iLineNo);

View File

@ -1,7 +1,7 @@
PHP CSS Parser
--------------
Import git ref: 50a802f562e71236140e2a8903b097c28d6101de
Import git ref: c3b01ef0a85824e86fd86a74a8154d8d5c34b0ff
(master)
Downloaded from: https://github.com/sabberworm/PHP-CSS-Parser