From 39b5494aeba180e8d56477919c47eba030803ec8 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Wed, 27 May 2020 18:27:32 +0200 Subject: [PATCH] LibWeb: Implement the "after attribute name" tokenizer state One little step at a time towards parsing the monster blob of HTML we get from twitter.com :^) --- Libraries/LibWeb/Parser/HTMLTokenizer.cpp | 25 +++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/Libraries/LibWeb/Parser/HTMLTokenizer.cpp b/Libraries/LibWeb/Parser/HTMLTokenizer.cpp index 72b5230fdc..bb6fe56dff 100644 --- a/Libraries/LibWeb/Parser/HTMLTokenizer.cpp +++ b/Libraries/LibWeb/Parser/HTMLTokenizer.cpp @@ -807,6 +807,31 @@ _StartOfFunction: BEGIN_STATE(AfterAttributeName) { + ON_WHITESPACE + { + continue; + } + ON('/') + { + SWITCH_TO(SelfClosingStartTag); + } + ON('=') + { + SWITCH_TO(BeforeAttributeValue); + } + ON('>') + { + SWITCH_TO(Data); + } + ON_EOF + { + TODO(); + } + ANYTHING_ELSE + { + m_current_token.m_tag.attributes.append(HTMLToken::AttributeBuilder()); + RECONSUME_IN(AttributeName); + } } END_STATE