diff options
Diffstat (limited to 'gpu/command_buffer')
-rw-r--r-- | gpu/command_buffer/client/gles2_implementation.cc | 10 | ||||
-rw-r--r-- | gpu/command_buffer/client/gles2_implementation.h | 2 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gpu/command_buffer/client/gles2_implementation.cc b/gpu/command_buffer/client/gles2_implementation.cc index 94ad783..5d46196 100644 --- a/gpu/command_buffer/client/gles2_implementation.cc +++ b/gpu/command_buffer/client/gles2_implementation.cc @@ -1036,6 +1036,10 @@ void GLES2Implementation::Flush() { void GLES2Implementation::Finish() { GPU_CLIENT_SINGLE_THREAD_CHECK(); + FinishHelper(); +} + +void GLES2Implementation::FinishHelper() { GPU_CLIENT_LOG("[" << this << "] glFinish()"); TRACE_EVENT0("gpu", "GLES2::Finish"); // Insert the cmd to call glFinish @@ -3002,13 +3006,13 @@ void GLES2Implementation::DeleteQueriesEXTHelper( } if (query_pending) { - Finish(); + FinishHelper(); } for (GLsizei ii = 0; ii < n; ++ii) { QueryTracker::Query* query = query_tracker_->GetQuery(queries[ii]); if (query && query->Pending()) { - GPU_CHECK(!query->CheckResultsAvailable(helper_)); + GPU_CHECK(query->CheckResultsAvailable(helper_)); } query_tracker_->RemoveQuery(queries[ii]); } @@ -3141,7 +3145,7 @@ void GLES2Implementation::GetQueryObjectuivEXT( helper_->WaitForToken(query->token()); if (!query->CheckResultsAvailable(helper_)) { // TODO(gman): Speed this up. - Finish(); + FinishHelper(); GPU_CHECK(query->CheckResultsAvailable(helper_)); } } diff --git a/gpu/command_buffer/client/gles2_implementation.h b/gpu/command_buffer/client/gles2_implementation.h index e4b838e..b8c3da1 100644 --- a/gpu/command_buffer/client/gles2_implementation.h +++ b/gpu/command_buffer/client/gles2_implementation.h @@ -472,6 +472,8 @@ class GLES2_IMPL_EXPORT GLES2Implementation { IdHandlerInterface* GetIdHandler(int id_namespace) const; + void FinishHelper(); + GLES2Util util_; GLES2CmdHelper* helper_; TransferBufferInterface* transfer_buffer_; |