diff options
-rwxr-xr-x | gpu/command_buffer/build_gles2_cmd_buffer.py | 1 | ||||
-rw-r--r-- | gpu/command_buffer/client/gles2_implementation.cc | 14 | ||||
-rw-r--r-- | gpu/command_buffer/client/gles2_implementation_impl_autogen.h | 11 |
3 files changed, 15 insertions, 11 deletions
diff --git a/gpu/command_buffer/build_gles2_cmd_buffer.py b/gpu/command_buffer/build_gles2_cmd_buffer.py index 33690bf..55f4458 100755 --- a/gpu/command_buffer/build_gles2_cmd_buffer.py +++ b/gpu/command_buffer/build_gles2_cmd_buffer.py @@ -1159,6 +1159,7 @@ _FUNCTION_INFO = { 'type': 'Bind', 'decoder_func': 'DoBindBuffer', 'gen_func': 'GenBuffersARB', + 'impl_func': False, }, 'BindFramebuffer': { 'type': 'Bind', diff --git a/gpu/command_buffer/client/gles2_implementation.cc b/gpu/command_buffer/client/gles2_implementation.cc index 43b88a0..a66e2a7 100644 --- a/gpu/command_buffer/client/gles2_implementation.cc +++ b/gpu/command_buffer/client/gles2_implementation.cc @@ -1284,6 +1284,20 @@ void GLES2Implementation::BindUniformLocationCHROMIUM( helper_->SetBucketSize(kResultBucketId, 0); } +void GLES2Implementation::BindBuffer(GLenum target, GLuint buffer) { + GPU_CLIENT_SINGLE_THREAD_CHECK(); + GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindBuffer(" + << GLES2Util::GetStringBufferTarget(target) << ", " + << buffer << ")"); + if (IsBufferReservedId(buffer)) { + SetGLError(GL_INVALID_OPERATION, "BindBuffer", "buffer reserved id"); + return; + } + BindBufferHelper(target, buffer); + if (target != GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM) + helper_->BindBuffer(target, buffer); +} + void GLES2Implementation::GetVertexAttribPointerv( GLuint index, GLenum pname, void** ptr) { GPU_CLIENT_SINGLE_THREAD_CHECK(); diff --git a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h index 8353e0e..10a76a6 100644 --- a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h +++ b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h @@ -17,17 +17,6 @@ void GLES2Implementation::AttachShader(GLuint program, GLuint shader) { helper_->AttachShader(program, shader); } -void GLES2Implementation::BindBuffer(GLenum target, GLuint buffer) { - GPU_CLIENT_SINGLE_THREAD_CHECK(); - GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindBuffer(" << GLES2Util::GetStringBufferTarget(target) << ", " << buffer << ")"); // NOLINT - if (IsBufferReservedId(buffer)) { - SetGLError(GL_INVALID_OPERATION, "BindBuffer", "buffer reserved id"); - return; - } - BindBufferHelper(target, buffer); - helper_->BindBuffer(target, buffer); -} - void GLES2Implementation::BindFramebuffer(GLenum target, GLuint framebuffer) { GPU_CLIENT_SINGLE_THREAD_CHECK(); GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindFramebuffer(" << GLES2Util::GetStringFrameBufferTarget(target) << ", " << framebuffer << ")"); // NOLINT |