Index: cc/software_renderer.cc |
diff --git a/cc/software_renderer.cc b/cc/software_renderer.cc |
index 78a92294e6e0637063f60f81167a12f7934ee2cb..5a6d42d8527822f5d47db43db51268282f8eaffd 100644 |
--- a/cc/software_renderer.cc |
+++ b/cc/software_renderer.cc |
@@ -278,6 +278,11 @@ void SoftwareRenderer::drawRenderPassQuad(const DrawingFrame& frame, const Rende |
if (!contentTexture || !contentTexture->id()) |
return; |
+ const RenderPass* renderPass = frame.renderPassesById->get(quad->renderPassId()); |
+ DCHECK(renderPass); |
+ if (!renderPass) |
+ return; |
+ |
DCHECK(isSoftwareResource(contentTexture->id())); |
ResourceProvider::ScopedReadLockSoftware lock(m_resourceProvider, contentTexture->id()); |
@@ -297,6 +302,10 @@ void SoftwareRenderer::drawRenderPassQuad(const DrawingFrame& frame, const Rende |
shader->setLocalMatrix(contentMat); |
m_skCurrentPaint.setShader(shader); |
+ SkImageFilter* filter = renderPass->filter(); |
+ if (filter) |
+ m_skCurrentPaint.setImageFilter(filter); |
Stephen White
2012/11/14 01:07:17
You'll only get non-NULL SkImageFIlters here when
slavi
2012/11/14 01:17:43
I know. And the plan is to always get a non-NULL S
|
+ |
if (quad->maskResourceId()) { |
ResourceProvider::ScopedReadLockSoftware maskLock(m_resourceProvider, quad->maskResourceId()); |