Index: Source/core/css/resolver/StyleResolver.cpp |
diff --git a/Source/core/css/resolver/StyleResolver.cpp b/Source/core/css/resolver/StyleResolver.cpp |
index 222dca9a1fa28d7ed8faf2347d7ad77d915c9588..5bd629a9daf41b9a7c01489bd3dec8c0ffde8e79 100644 |
--- a/Source/core/css/resolver/StyleResolver.cpp |
+++ b/Source/core/css/resolver/StyleResolver.cpp |
@@ -63,6 +63,7 @@ |
#include "core/css/resolver/MediaQueryResult.h" |
#include "core/css/resolver/SharedStyleFinder.h" |
#include "core/css/resolver/StyleAdjuster.h" |
+#include "core/css/resolver/StyleResolverParentScope.h" |
#include "core/css/resolver/StyleResolverStats.h" |
#include "core/css/resolver/ViewportStyleResolver.h" |
#include "core/dom/CSSSelectorWatch.h" |
@@ -651,6 +652,8 @@ PassRefPtr<RenderStyle> StyleResolver::styleForElement(Element* element, RenderS |
didAccess(); |
+ StyleResolverParentScope::ensureParentStackIsPushed(); |
+ |
if (element == document().documentElement()) |
resetDirectionAndWritingModeOnDocument(document()); |
StyleResolverState state(document(), element, defaultParent); |
@@ -857,6 +860,8 @@ bool StyleResolver::pseudoStyleForElementInternal(Element& element, const Pseudo |
ASSERT(documentSettings()); |
ASSERT(pseudoStyleRequest.pseudoId != FIRST_LINE_INHERITED); |
+ StyleResolverParentScope::ensureParentStackIsPushed(); |
+ |
if (pseudoStyleRequest.allowsInheritance(state.parentStyle())) { |
state.setStyle(RenderStyle::create()); |
state.style()->inheritFrom(state.parentStyle()); |