Index: third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.cpp |
diff --git a/third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.cpp b/third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.cpp |
index 0f25ff226a7c893f4c6cefb0d10885810f2c0f5e..f4e2ec0192b06e8e5f9984f42d40589b2cb3e687 100644 |
--- a/third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.cpp |
+++ b/third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.cpp |
@@ -58,9 +58,13 @@ AcceleratedImageBufferSurface::AcceleratedImageBufferSurface( |
m_surface = SkSurface::MakeRenderTarget( |
grContext, SkBudgeted::kYes, info, 0 /* sampleCount */, |
Opaque == opacityMode ? nullptr : &disableLCDProps); |
- if (!m_surface.get()) |
+ if (!m_surface) |
return; |
clear(); |
+ |
+ // Always save an initial frame, to support resetting the top level matrix |
+ // and clip. |
+ m_surface->getCanvas()->save(); |
} |
bool AcceleratedImageBufferSurface::isValid() const { |