From f09d2bba0fb6a35f4c9cb28a8a1d97647cc42925 Mon Sep 17 00:00:00 2001 From: Moonchild Date: Thu, 23 Mar 2023 00:29:13 +0100 Subject: [PATCH] Issue #2171 - Skip over shadow nodes that don't have an owning node. Resolves #2171 --- dom/base/ShadowRoot.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dom/base/ShadowRoot.cpp b/dom/base/ShadowRoot.cpp index 92d5a2f2a9..d432c96e41 100644 --- a/dom/base/ShadowRoot.cpp +++ b/dom/base/ShadowRoot.cpp @@ -279,6 +279,13 @@ ShadowRoot::InsertSheet(StyleSheet* aSheet, } nsINode* sheetOwningNode = SheetAt(i)->GetOwnerNode(); + + if (!sheetOwningNode) { + // Keep moving; all sheets with a sheetOwner come after all + // sheets without an owning Node + continue; + } + if (nsContentUtils::PositionIsBefore(aLinkingContent, sheetOwningNode)) { InsertSheetAt(i, *aSheet); mProtoBinding->InsertStyleSheetAt(i, aSheet);