Index: third_party/WebKit/Source/core/layout/compositing/CompositingInputsUpdater.cpp |
diff --git a/third_party/WebKit/Source/core/layout/compositing/CompositingInputsUpdater.cpp b/third_party/WebKit/Source/core/layout/compositing/CompositingInputsUpdater.cpp |
index 1c567e638d648337bec4ec130acd580c7f999139..5c51407037f542945f78277e5854b6c71ba00aa7 100644 |
--- a/third_party/WebKit/Source/core/layout/compositing/CompositingInputsUpdater.cpp |
+++ b/third_party/WebKit/Source/core/layout/compositing/CompositingInputsUpdater.cpp |
@@ -239,6 +239,12 @@ void CompositingInputsUpdater::updateRecursive(PaintLayer* layer, |
if (layer->layoutObject()->hasClipPath()) |
info.hasAncestorWithClipPath = true; |
+ layer->setIsRootScroller(layer == |
+ layer->layoutObject() |
+ ->document() |
+ .rootScrollerController() |
+ ->rootScrollerPaintLayer()); |
+ |
bool hasDescendantWithClipPath = false; |
bool hasNonIsolatedDescendantWithBlendMode = false; |
bool hasRootScrollerAsDescendant = false; |
@@ -246,12 +252,8 @@ void CompositingInputsUpdater::updateRecursive(PaintLayer* layer, |
child = child->nextSibling()) { |
updateRecursive(child, updateType, info); |
- hasRootScrollerAsDescendant |= child->hasRootScrollerAsDescendant() || |
- (child == |
- child->layoutObject() |
- ->document() |
- .rootScrollerController() |
- ->rootScrollerPaintLayer()); |
+ hasRootScrollerAsDescendant |= |
+ child->hasRootScrollerAsDescendant() || child->isRootScroller(); |
hasDescendantWithClipPath |= child->hasDescendantWithClipPath() || |
child->layoutObject()->hasClipPath(); |
hasNonIsolatedDescendantWithBlendMode |= |