| Index: third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp
|
| diff --git a/third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp b/third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp
|
| index 6b6db13c7262e445db7214c0a3864ac7277f0eb7..9816b91a2278b54b83212b22b4f617c8d5627161 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp
|
| +++ b/third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp
|
| @@ -312,8 +312,9 @@ void PaintController::commitNewDisplayItems(const LayoutSize& offsetFromLayoutOb
|
|
|
| for (const auto& item : m_newDisplayItemList) {
|
| m_newDisplayItemList.appendVisualRect(visualRectForDisplayItem(item, offsetFromLayoutObject));
|
| - if (item.isDrawing())
|
| - gpuAnalyzer.analyze(static_cast<const DrawingDisplayItem&>(item).picture());
|
| + // No reason to continue the analysis once we have a veto.
|
| + if (gpuAnalyzer.suitableForGpuRasterization())
|
| + item.analyzeForGpuRasterization(gpuAnalyzer);
|
| }
|
| m_currentPaintArtifact = PaintArtifact(std::move(m_newDisplayItemList), m_newPaintChunks.releasePaintChunks(), gpuAnalyzer.suitableForGpuRasterization());
|
| m_newDisplayItemList = DisplayItemList(kInitialDisplayItemListCapacityBytes);
|
|
|