Chromium Code Reviews| Index: third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| diff --git a/third_party/WebKit/Source/core/paint/PaintLayer.cpp b/third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| index 8f606340fb102fe5fba67b19f2f46608a8e549a8..654687b1af9090a6882bcc7cfd6dbac750e2e932 100644 |
| --- a/third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| +++ b/third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| @@ -2463,8 +2463,16 @@ void PaintLayer::updateSelfPaintingLayer() |
| m_isSelfPaintingLayer = isSelfPaintingLayer; |
| - if (parent()) |
| - parent()->dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); |
| + if (PaintLayer* parent = this->parent()) { |
|
pdr.
2016/04/19 21:17:57
The tests in this patch seem to pass without this
Xianzhu
2016/04/19 23:35:47
Thanks for verifying the tests. Sorry for not veri
|
| + parent->dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); |
| + |
| + if (PaintLayer* enclosingSelfPaintingLayer = parent->enclosingSelfPaintingLayer()) { |
| + if (isSelfPaintingLayer) |
| + mergeNeedsPaintPhaseFlagsFrom(*enclosingSelfPaintingLayer); |
| + else |
| + enclosingSelfPaintingLayer->mergeNeedsPaintPhaseFlagsFrom(*this); |
| + } |
| + } |
| } |
| PaintLayer* PaintLayer::enclosingSelfPaintingLayer() |