mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-07 09:04:30 +00:00
LibWeb: Add a way to stop the new HTML parser
Some things are specced to "stop parsing", which basically just means to stop fetching tokens and jump to "The end"
This commit is contained in:
@@ -76,6 +76,11 @@ void HTMLDocumentParser::run(const URL& url)
|
||||
dbg() << "[" << insertion_mode_name() << "] " << token.to_string();
|
||||
#endif
|
||||
process_using_the_rules_for(m_insertion_mode, token);
|
||||
|
||||
if (m_stop_parsing) {
|
||||
dbg() << "Stop parsing! :^)";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// "The end"
|
||||
@@ -497,8 +502,8 @@ void HTMLDocumentParser::handle_after_body(HTMLToken& token)
|
||||
}
|
||||
|
||||
if (token.is_end_of_file()) {
|
||||
// FIXME: Stop parsing!
|
||||
TODO();
|
||||
stop_parsing();
|
||||
return;
|
||||
}
|
||||
|
||||
if (token.is_end_tag() && token.tag_name() == "html") {
|
||||
@@ -522,7 +527,7 @@ void HTMLDocumentParser::handle_after_after_body(HTMLToken& token)
|
||||
}
|
||||
|
||||
if (token.is_end_of_file()) {
|
||||
dbg() << "Stop parsing! :^)";
|
||||
stop_parsing();
|
||||
return;
|
||||
}
|
||||
ASSERT_NOT_REACHED();
|
||||
|
||||
Reference in New Issue
Block a user