Index: cc/trees/thread_proxy.cc |
diff --git a/cc/trees/thread_proxy.cc b/cc/trees/thread_proxy.cc |
index 18f4e18ea96a347d43e7f667f2af1da430c3e038..452c0072f5c581d3a6c7f284dcc9a575d46e6a7b 100644 |
--- a/cc/trees/thread_proxy.cc |
+++ b/cc/trees/thread_proxy.cc |
@@ -25,8 +25,11 @@ |
#include "cc/trees/blocking_task_runner.h" |
#include "cc/trees/layer_tree_host.h" |
#include "cc/trees/layer_tree_impl.h" |
+#include "gpu/command_buffer/client/gles2_interface.h" |
#include "ui/gfx/frame_time.h" |
+using gpu::gles2::GLES2Interface; |
+ |
namespace { |
// Measured in seconds. |
@@ -1273,8 +1276,14 @@ void ThreadProxy::InitializeOutputSurfaceOnImplThread( |
void ThreadProxy::FinishGLOnImplThread(CompletionEvent* completion) { |
TRACE_EVENT0("cc", "ThreadProxy::FinishGLOnImplThread"); |
DCHECK(IsImplThread()); |
- if (impl().layer_tree_host_impl->resource_provider()) |
- impl().layer_tree_host_impl->resource_provider()->Finish(); |
+ if (impl().layer_tree_host_impl->output_surface()->context_provider()) { |
+ GLES2Interface* gl = impl() |
+ .layer_tree_host_impl->output_surface() |
+ ->context_provider() |
+ ->ContextGL(); |
+ if (gl) |
danakj
2014/07/11 16:49:04
don't need
sohanjg
2014/07/11 17:12:46
Done.
|
+ gl->Finish(); |
+ } |
completion->Signal(); |
} |