| Index: gpu/command_buffer/client/gles2_implementation.cc
|
| diff --git a/gpu/command_buffer/client/gles2_implementation.cc b/gpu/command_buffer/client/gles2_implementation.cc
|
| index 1c8045d75bd8269809b1690837a016d494ee94e7..b4c2858ca3f04089e32e607f82de3a7245cc374b 100644
|
| --- a/gpu/command_buffer/client/gles2_implementation.cc
|
| +++ b/gpu/command_buffer/client/gles2_implementation.cc
|
| @@ -3875,7 +3875,7 @@ void GLES2Implementation::GetVertexAttribfv(
|
| << static_cast<const void*>(params) << ")");
|
| uint32 value = 0;
|
| if (vertex_array_object_manager_->GetVertexAttrib(index, pname, &value)) {
|
| - *params = static_cast<float>(value);
|
| + *params = static_cast<GLfloat>(value);
|
| return;
|
| }
|
| TRACE_EVENT0("gpu", "GLES2::GetVertexAttribfv");
|
| @@ -3906,7 +3906,7 @@ void GLES2Implementation::GetVertexAttribiv(
|
| << static_cast<const void*>(params) << ")");
|
| uint32 value = 0;
|
| if (vertex_array_object_manager_->GetVertexAttrib(index, pname, &value)) {
|
| - *params = value;
|
| + *params = static_cast<GLint>(value);
|
| return;
|
| }
|
| TRACE_EVENT0("gpu", "GLES2::GetVertexAttribiv");
|
| @@ -3928,6 +3928,68 @@ void GLES2Implementation::GetVertexAttribiv(
|
| CheckGLError();
|
| }
|
|
|
| +void GLES2Implementation::GetVertexAttribIiv(
|
| + GLuint index, GLenum pname, GLint* params) {
|
| + GPU_CLIENT_SINGLE_THREAD_CHECK();
|
| + GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetVertexAttribIiv("
|
| + << index << ", "
|
| + << GLES2Util::GetStringVertexAttribute(pname) << ", "
|
| + << static_cast<const void*>(params) << ")");
|
| + uint32 value = 0;
|
| + if (vertex_array_object_manager_->GetVertexAttrib(index, pname, &value)) {
|
| + *params = static_cast<GLint>(value);
|
| + return;
|
| + }
|
| + TRACE_EVENT0("gpu", "GLES2::GetVertexAttribIiv");
|
| + typedef cmds::GetVertexAttribiv::Result Result;
|
| + Result* result = GetResultAs<Result*>();
|
| + if (!result) {
|
| + return;
|
| + }
|
| + result->SetNumResults(0);
|
| + helper_->GetVertexAttribIiv(
|
| + index, pname, GetResultShmId(), GetResultShmOffset());
|
| + WaitForCmd();
|
| + result->CopyResult(params);
|
| + GPU_CLIENT_LOG_CODE_BLOCK({
|
| + for (int32 i = 0; i < result->GetNumResults(); ++i) {
|
| + GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]);
|
| + }
|
| + });
|
| + CheckGLError();
|
| +}
|
| +
|
| +void GLES2Implementation::GetVertexAttribIuiv(
|
| + GLuint index, GLenum pname, GLuint* params) {
|
| + GPU_CLIENT_SINGLE_THREAD_CHECK();
|
| + GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetVertexAttribIuiv("
|
| + << index << ", "
|
| + << GLES2Util::GetStringVertexAttribute(pname) << ", "
|
| + << static_cast<const void*>(params) << ")");
|
| + uint32 value = 0;
|
| + if (vertex_array_object_manager_->GetVertexAttrib(index, pname, &value)) {
|
| + *params = static_cast<GLuint>(value);
|
| + return;
|
| + }
|
| + TRACE_EVENT0("gpu", "GLES2::GetVertexAttribIuiv");
|
| + typedef cmds::GetVertexAttribiv::Result Result;
|
| + Result* result = GetResultAs<Result*>();
|
| + if (!result) {
|
| + return;
|
| + }
|
| + result->SetNumResults(0);
|
| + helper_->GetVertexAttribIuiv(
|
| + index, pname, GetResultShmId(), GetResultShmOffset());
|
| + WaitForCmd();
|
| + result->CopyResult(params);
|
| + GPU_CLIENT_LOG_CODE_BLOCK({
|
| + for (int32 i = 0; i < result->GetNumResults(); ++i) {
|
| + GPU_CLIENT_LOG(" " << i << ": " << result->GetData()[i]);
|
| + }
|
| + });
|
| + CheckGLError();
|
| +}
|
| +
|
| void GLES2Implementation::Swap() {
|
| SwapBuffers();
|
| }
|
|
|