diff --git a/Libraries/LibWeb/XML/XMLDocumentBuilder.cpp b/Libraries/LibWeb/XML/XMLDocumentBuilder.cpp index 43cbc719580..1316bce4e03 100644 --- a/Libraries/LibWeb/XML/XMLDocumentBuilder.cpp +++ b/Libraries/LibWeb/XML/XMLDocumentBuilder.cpp @@ -232,7 +232,7 @@ void XMLDocumentBuilder::element_end(const XML::Name& name) }; auto* parent = m_current_node->parent_node(); - if (parent->is_document_fragment()) { + if (parent && parent->is_document_fragment()) { auto template_parent_node = m_template_node_stack.take_last(); parent = template_parent_node.ptr(); } diff --git a/Tests/LibWeb/Crash/DOM/xhtml-namespace-change.xhtml b/Tests/LibWeb/Crash/DOM/xhtml-namespace-change.xhtml new file mode 100644 index 00000000000..895af4720b6 --- /dev/null +++ b/Tests/LibWeb/Crash/DOM/xhtml-namespace-change.xhtml @@ -0,0 +1,7 @@ + +
+