Index: Source/core/layout/compositing/DeprecatedPaintLayerCompositor.cpp |
diff --git a/Source/core/layout/compositing/DeprecatedPaintLayerCompositor.cpp b/Source/core/layout/compositing/DeprecatedPaintLayerCompositor.cpp |
index 53657cedd899cc8ab4f52e093fa34c4a0a19b8e6..b6f92a670e003593b126717de09f8d4ea6f3a2e0 100644 |
--- a/Source/core/layout/compositing/DeprecatedPaintLayerCompositor.cpp |
+++ b/Source/core/layout/compositing/DeprecatedPaintLayerCompositor.cpp |
@@ -194,6 +194,10 @@ void updateDescendantDependentFlagsForEntireSubtree(DeprecatedPaintLayer& layer) |
void DeprecatedPaintLayerCompositor::updateIfNeededRecursive() |
{ |
+ FrameView* view = m_layoutView.frameView(); |
+ if (view->shouldThrottleStyleLayoutAndCompositingUpdates()) |
+ return; |
+ |
for (Frame* child = m_layoutView.frameView()->frame().tree().firstChild(); child; child = child->tree().nextSibling()) { |
if (!child->isLocalFrame()) |
continue; |
@@ -238,8 +242,12 @@ void DeprecatedPaintLayerCompositor::updateIfNeededRecursive() |
ASSERT(lifecycle().state() == DocumentLifecycle::CompositingClean); |
assertNoUnresolvedDirtyBits(); |
for (Frame* child = m_layoutView.frameView()->frame().tree().firstChild(); child; child = child->tree().nextSibling()) { |
- if (child->isLocalFrame()) |
- toLocalFrame(child)->contentLayoutObject()->compositor()->assertNoUnresolvedDirtyBits(); |
+ if (!child->isLocalFrame()) |
+ continue; |
+ LocalFrame* localFrame = toLocalFrame(child); |
+ if (localFrame->shouldThrottleStyleLayoutAndCompositingUpdates()) |
+ continue; |
+ localFrame->contentLayoutObject()->compositor()->assertNoUnresolvedDirtyBits(); |
} |
#endif |
} |