Index: third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.cpp |
diff --git a/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.cpp b/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.cpp |
index 1b81bb3b60dae24db2760fa58dd1ce78d928b28c..d23480e13d8089f0e34e961065ac7d9bfe24d96a 100644 |
--- a/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.cpp |
+++ b/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.cpp |
@@ -228,7 +228,6 @@ sk_sp<PaintRecord> RecordingImageBufferSurface::getPicture() { |
FallbackReason fallbackReason = FallbackReasonUnknown; |
bool canUsePicture = finalizeFrameInternal(&fallbackReason); |
- m_imageBuffer->didFinalizeFrame(); |
ASSERT(canUsePicture || m_fallbackFactory); |
@@ -241,9 +240,9 @@ sk_sp<PaintRecord> RecordingImageBufferSurface::getPicture() { |
return nullptr; |
} |
-void RecordingImageBufferSurface::finalizeFrame(const FloatRect& dirtyRect) { |
+void RecordingImageBufferSurface::finalizeFrame() { |
if (m_fallbackSurface) { |
- m_fallbackSurface->finalizeFrame(dirtyRect); |
+ m_fallbackSurface->finalizeFrame(); |
return; |
} |
@@ -252,6 +251,14 @@ void RecordingImageBufferSurface::finalizeFrame(const FloatRect& dirtyRect) { |
fallBackToRasterCanvas(fallbackReason); |
} |
+void RecordingImageBufferSurface::doPaintInvalidation( |
+ const FloatRect& dirtyRect) { |
+ if (m_fallbackSurface) { |
+ m_fallbackSurface->doPaintInvalidation(dirtyRect); |
+ return; |
xlai (Olivia)
2017/02/08 17:58:40
no need "return".
Justin Novosad
2017/02/08 18:43:12
Done.
|
+ } |
+} |
+ |
static RecordingImageBufferSurface::FallbackReason flushReasonToFallbackReason( |
FlushReason reason) { |
switch (reason) { |
@@ -298,8 +305,7 @@ bool RecordingImageBufferSurface::finalizeFrameInternal( |
ASSERT(m_currentFrame->getRecordingCanvas()); |
ASSERT(fallbackReason); |
ASSERT(*fallbackReason == FallbackReasonUnknown); |
- |
- if (!m_imageBuffer->isDirty()) { |
+ if (!m_didRecordDrawCommandsInCurrentFrame) { |
if (!m_previousFrame) { |
// Create an initial blank frame |
m_previousFrame = m_currentFrame->finishRecordingAsPicture(); |