Index: cc/trees/thread_proxy.cc |
diff --git a/cc/trees/thread_proxy.cc b/cc/trees/thread_proxy.cc |
index 56ce577b9d65110eda1e33f3f53a9992f558aabe..4eba00ba50f1c5df262cd66c91bf3c35c0af8c97 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. |
@@ -1266,8 +1269,13 @@ 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(); |
+ ResourceProvider* resource_provider = |
+ impl().layer_tree_host_impl->resource_provider(); |
danakj
2014/07/10 17:01:44
use the lthi->output_surface() instead, and null c
sohanjg
2014/07/11 16:43:33
Done.
|
+ if (resource_provider) { |
+ GLES2Interface* gl = resource_provider->ContextGL(); |
+ if (gl) |
+ gl->Finish(); |
+ } |
completion->Signal(); |
} |