From 83f6b8bc9a4a332d9532a4e0bebcf9c40d00df1b Mon Sep 17 00:00:00 2001 From: asynts Date: Fri, 27 Nov 2020 23:00:53 +0100 Subject: [PATCH] LibWeb: Two more edge cases for TreeNode::insert_before. --- Libraries/LibWeb/TreeNode.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Libraries/LibWeb/TreeNode.h b/Libraries/LibWeb/TreeNode.h index 96e8155b61..604dcb6625 100644 --- a/Libraries/LibWeb/TreeNode.h +++ b/Libraries/LibWeb/TreeNode.h @@ -380,6 +380,12 @@ inline void TreeNode::insert_before(NonnullRefPtr node, RefPtr child, b node->m_previous_sibling = child->m_previous_sibling; node->m_next_sibling = child; + if (child->m_previous_sibling) + child->m_previous_sibling->m_next_sibling = node; + + if (m_first_child == child) + m_first_child = node; + child->m_previous_sibling = node; if (m_first_child == child)