From 1775021d7128ebe7fff680e13e1d37d14c62fd12 Mon Sep 17 00:00:00 2001 From: Florian Cramer Date: Mon, 21 Oct 2024 20:55:42 +0200 Subject: [PATCH] LibXML: Allow empty pubid when parsing document type --- .../DOM/domparser-parsefromstring-xml-empty-pubid.txt | 1 + .../DOM/domparser-parsefromstring-xml-empty-pubid.html | 9 +++++++++ Userland/Libraries/LibXML/Parser/Parser.cpp | 3 ++- 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 Tests/LibWeb/Text/expected/DOM/domparser-parsefromstring-xml-empty-pubid.txt create mode 100644 Tests/LibWeb/Text/input/DOM/domparser-parsefromstring-xml-empty-pubid.html diff --git a/Tests/LibWeb/Text/expected/DOM/domparser-parsefromstring-xml-empty-pubid.txt b/Tests/LibWeb/Text/expected/DOM/domparser-parsefromstring-xml-empty-pubid.txt new file mode 100644 index 00000000000..53cdf1e9393 --- /dev/null +++ b/Tests/LibWeb/Text/expected/DOM/domparser-parsefromstring-xml-empty-pubid.txt @@ -0,0 +1 @@ +PASSED diff --git a/Tests/LibWeb/Text/input/DOM/domparser-parsefromstring-xml-empty-pubid.html b/Tests/LibWeb/Text/input/DOM/domparser-parsefromstring-xml-empty-pubid.html new file mode 100644 index 00000000000..97d6fe0863a --- /dev/null +++ b/Tests/LibWeb/Text/input/DOM/domparser-parsefromstring-xml-empty-pubid.html @@ -0,0 +1,9 @@ + + diff --git a/Userland/Libraries/LibXML/Parser/Parser.cpp b/Userland/Libraries/LibXML/Parser/Parser.cpp index 62a40905747..9a6884f8848 100644 --- a/Userland/Libraries/LibXML/Parser/Parser.cpp +++ b/Userland/Libraries/LibXML/Parser/Parser.cpp @@ -1544,7 +1544,8 @@ ErrorOr Parser::parse_public_id_literal() [q = quote[0]](auto x) { return (q == '\'' ? x != '\'' : true) && s_public_id_characters.contains(x); }, - "a PubidChar"sv)); + "a PubidChar"sv, + true)); TRY(expect(quote)); rollback.disarm();