| Index: cc/gl_renderer.cc | 
| diff --git a/cc/gl_renderer.cc b/cc/gl_renderer.cc | 
| index 7016d91b0db1b3a9c9899a801844e3c15df9baeb..e5e4347119a21f206be3692b601f6057ca09c8c2 100644 | 
| --- a/cc/gl_renderer.cc | 
| +++ b/cc/gl_renderer.cc | 
| @@ -648,6 +648,11 @@ void GLRenderer::drawRenderPassQuad(DrawingFrame& frame, const RenderPassDrawQua | 
| setShaderOpacity(quad->opacity(), shaderAlphaLocation); | 
| setShaderQuadF(surfaceQuad, shaderQuadLocation); | 
| drawQuadGeometry(frame, quad->quadTransform(), quad->quadRect(), shaderMatrixLocation); | 
| + | 
| +    // Flush the compositor context before the filter bitmap goes out of | 
| +    // scope, so the draw gets processed before the filter texture gets deleted. | 
| +    if (filterBitmap.getTexture()) | 
| +        m_context->flush(); | 
| } | 
|  | 
| void GLRenderer::drawSolidColorQuad(const DrawingFrame& frame, const SolidColorDrawQuad* quad) | 
|  |