Index: third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
diff --git a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
index a0a17d3962ef13e7d138575fc7b25be600a0f5ca..582ab106323fd7b67af9a1a8c668fff80b82f8a6 100644 |
--- a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
+++ b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp |
@@ -382,11 +382,19 @@ void PaintPropertyTreeBuilder::updateEffect( |
effectNodeNeeded = true; |
CompositorFilterOperations filter; |
+#if DCHECK_IS_ON() |
+ FilterOperations styleFilterOperations; |
+#endif |
if (object.isSVG() && !object.isSVGRoot()) { |
// TODO(trchen): SVG caches filters in SVGResources. Implement it. |
} else if (PaintLayer* layer = toLayoutBoxModelObject(object).layer()) { |
// TODO(trchen): Eliminate PaintLayer dependency. |
+#if DCHECK_IS_ON() |
+ filter = layer->createCompositorFilterOperationsForFilter( |
+ style, &styleFilterOperations); |
+#else |
filter = layer->createCompositorFilterOperationsForFilter(style); |
+#endif |
} |
const ClipPaintPropertyNode* outputClip = context.inputClipOfCurrentEffect; |
@@ -422,6 +430,9 @@ void PaintPropertyTreeBuilder::updateEffect( |
context.forceSubtreeUpdate |= properties.updateEffect( |
context.currentEffect, context.current.transform, outputClip, |
std::move(filter), opacity); |
+#if DCHECK_IS_ON() |
+ properties.setStyleFilterOperations(styleFilterOperations); |
pdr.
2016/12/08 02:00:41
How much additional value will these checks give u
Xianzhu
2016/12/08 17:34:35
You are right. The little additional value is not
|
+#endif |
} else { |
if (auto* properties = object.getMutableForPainting().paintProperties()) |
context.forceSubtreeUpdate |= properties->clearEffect(); |