| Index: Source/core/dom/Document.cpp
|
| diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp
|
| index a5dddea9ff27a0d1ab8a4d19beb42ad0897e3fd2..f81d7d1b89fdb327f9308aa0841dccd016e2ad5b 100644
|
| --- a/Source/core/dom/Document.cpp
|
| +++ b/Source/core/dom/Document.cpp
|
| @@ -1680,8 +1680,10 @@ void Document::recalcStyle(StyleChange change)
|
| m_inStyleRecalc = false;
|
|
|
| // Pseudo element removal and similar may only work with these flags still set. Reset them after the style recalc.
|
| - if (m_styleResolver)
|
| + if (m_styleResolver) {
|
| m_styleSheetCollection->resetCSSFeatureFlags(m_styleResolver->ruleFeatureSet());
|
| + m_styleResolver->clearStyleSharingList();
|
| + }
|
|
|
| if (frameView) {
|
| frameView->resumeScheduledEvents();
|
| @@ -1930,6 +1932,8 @@ void Document::detach(const AttachContext& context)
|
| ContainerNode::detach(context);
|
|
|
| unscheduleStyleRecalc();
|
| + if (m_styleResolver)
|
| + m_styleResolver->clearStyleSharingList();
|
|
|
| if (render)
|
| render->destroy();
|
|
|