From a545935997be3701aeb2b8718837efe83f7a0a8b Mon Sep 17 00:00:00 2001 From: Shannon Booth Date: Thu, 4 Jan 2024 12:38:36 +1300 Subject: [PATCH] LibWeb: Create XML Documents in DOMParser.parseFromString --- Tests/LibWeb/Text/expected/DOM/DOMParser-xml-document.txt | 1 + Tests/LibWeb/Text/input/DOM/DOMParser-xml-document.html | 8 ++++++++ Userland/Libraries/LibWeb/HTML/DOMParser.cpp | 3 ++- 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 Tests/LibWeb/Text/expected/DOM/DOMParser-xml-document.txt create mode 100644 Tests/LibWeb/Text/input/DOM/DOMParser-xml-document.html diff --git a/Tests/LibWeb/Text/expected/DOM/DOMParser-xml-document.txt b/Tests/LibWeb/Text/expected/DOM/DOMParser-xml-document.txt new file mode 100644 index 0000000000..7b4c1cfe76 --- /dev/null +++ b/Tests/LibWeb/Text/expected/DOM/DOMParser-xml-document.txt @@ -0,0 +1 @@ +XMLDocument diff --git a/Tests/LibWeb/Text/input/DOM/DOMParser-xml-document.html b/Tests/LibWeb/Text/input/DOM/DOMParser-xml-document.html new file mode 100644 index 0000000000..699feb9a5c --- /dev/null +++ b/Tests/LibWeb/Text/input/DOM/DOMParser-xml-document.html @@ -0,0 +1,8 @@ + + diff --git a/Userland/Libraries/LibWeb/HTML/DOMParser.cpp b/Userland/Libraries/LibWeb/HTML/DOMParser.cpp index 81618082a5..c18582defe 100644 --- a/Userland/Libraries/LibWeb/HTML/DOMParser.cpp +++ b/Userland/Libraries/LibWeb/HTML/DOMParser.cpp @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -59,7 +60,7 @@ JS::NonnullGCPtr DOMParser::parse_from_string(StringView string, parser->run("about:blank"sv); } else { // -> Otherwise - document = DOM::Document::create(realm(), verify_cast(relevant_global_object(*this)).associated_document().url()); + document = DOM::XMLDocument::create(realm(), verify_cast(relevant_global_object(*this)).associated_document().url()); document->set_content_type(Bindings::idl_enum_to_string(type)); // 1. Create an XML parser parse, associated with document, and with XML scripting support disabled.