Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1725)

Unified Diff: third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp

Issue 2099683003: Optimize whitespace skipping in the CSSParser. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp
diff --git a/third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp b/third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp
index e6229ecdbe27f57867d3dc5703a507393989fff0..9a8075e707f9a94ee415539a3cade2ec853efe23 100644
--- a/third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp
+++ b/third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp
@@ -121,7 +121,7 @@ void CSSTokenizer::consume(unsigned offset)
CSSParserToken CSSTokenizer::whiteSpace(UChar cc)
{
- consumeUntilNonWhitespace();
+ m_input.advanceUntilNonWhitespace();
return CSSParserToken(WhitespaceToken);
}
@@ -471,7 +471,7 @@ CSSParserToken CSSTokenizer::consumeIdentLikeToken()
if (equalIgnoringASCIICase(name, "url")) {
// The spec is slightly different so as to avoid dropping whitespace
// tokens, but they wouldn't be used and this is easier.
- consumeUntilNonWhitespace();
+ m_input.advanceUntilNonWhitespace();
UChar next = m_input.nextInputChar();
if (next != '"' && next != '\'')
return consumeUrlToken();
@@ -562,7 +562,7 @@ static bool isNonPrintableCodePoint(UChar cc)
// http://dev.w3.org/csswg/css-syntax/#consume-url-token
CSSParserToken CSSTokenizer::consumeUrlToken()
{
- consumeUntilNonWhitespace();
+ m_input.advanceUntilNonWhitespace();
// URL tokens without escapes get handled without allocations
for (unsigned size = 0; ; size++) {
@@ -583,7 +583,7 @@ CSSParserToken CSSTokenizer::consumeUrlToken()
return CSSParserToken(UrlToken, registerString(result.toString()));
if (isHTMLSpace(cc)) {
- consumeUntilNonWhitespace();
+ m_input.advanceUntilNonWhitespace();
if (consumeIfNext(')') || m_input.nextInputChar() == kEndOfFileMarker)
return CSSParserToken(UrlToken, registerString(result.toString()));
break;
@@ -619,13 +619,6 @@ void CSSTokenizer::consumeBadUrlRemnants()
}
}
-void CSSTokenizer::consumeUntilNonWhitespace()
-{
- // Using HTML space here rather than CSS space since we don't do preprocessing
- while (isHTMLSpace<UChar>(m_input.nextInputChar()))
- consume();
-}
-
void CSSTokenizer::consumeSingleWhitespaceIfNext()
{
// We check for \r\n and HTML spaces since we don't do preprocessing

Powered by Google App Engine
This is Rietveld 408576698