| Index: cc/output/gl_renderer.cc
|
| diff --git a/cc/output/gl_renderer.cc b/cc/output/gl_renderer.cc
|
| index a80feac4ecc9f97f3fd5e731d99a43cc7ea98a99..35cca80bc6532384986c8934632cac2d7b6bfdc7 100644
|
| --- a/cc/output/gl_renderer.cc
|
| +++ b/cc/output/gl_renderer.cc
|
| @@ -204,6 +204,9 @@ bool GLRenderer::Initialize() {
|
| capabilities_.using_map_image =
|
| Settings().use_map_image && context_caps.map_image;
|
|
|
| + capabilities_.using_discard_framebuffer =
|
| + context_caps.discard_framebuffer;
|
| +
|
| is_using_bind_uniform_ = context_caps.bind_uniform_location;
|
|
|
| if (!InitializeSharedObjects())
|
| @@ -293,6 +296,14 @@ void GLRenderer::ClearFramebuffer(DrawingFrame* frame) {
|
| return;
|
| }
|
|
|
| + if (capabilities_.using_discard_framebuffer) {
|
| + GLenum attachments[] = {
|
| + GL_COLOR_EXT
|
| + };
|
| + context_->discardFramebufferEXT(
|
| + GL_FRAMEBUFFER, arraysize(attachments), attachments);
|
| + }
|
| +
|
| // On DEBUG builds, opaque render passes are cleared to blue to easily see
|
| // regions that were not drawn on the screen.
|
| if (frame->current_render_pass->has_transparent_background)
|
|
|