diff options
author | kkinnunen <kkinnunen@nvidia.com> | 2015-10-07 12:45:24 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-10-07 19:46:23 +0000 |
commit | ce8c01488b0366309db86d86c4df1ebdeca34739 (patch) | |
tree | 416e968369275d491e3138986adc6f5b169f51e7 /gpu | |
parent | dd2ba30d525610a26cd6e8cba89c02fa71e50bc5 (diff) | |
download | chromium_src-ce8c01488b0366309db86d86c4df1ebdeca34739.zip chromium_src-ce8c01488b0366309db86d86c4df1ebdeca34739.tar.gz chromium_src-ce8c01488b0366309db86d86c4df1ebdeca34739.tar.bz2 |
command_buffer: Return command buffer error instead of gl error for missing extension calls
Return command buffer error kUnknownCommand instead of gl error
GL_INVALID_OPERATION, if the called function is not supported.
Fixes inconsistency problems when implementing new extensions.
BUG=344330
R=zmo@chromium.org
Review URL: https://codereview.chromium.org/1391813003
Cr-Commit-Position: refs/heads/master@{#352919}
Diffstat (limited to 'gpu')
6 files changed, 73 insertions, 156 deletions
diff --git a/gpu/command_buffer/build_gles2_cmd_buffer.py b/gpu/command_buffer/build_gles2_cmd_buffer.py index c2cd436..e726958 100755 --- a/gpu/command_buffer/build_gles2_cmd_buffer.py +++ b/gpu/command_buffer/build_gles2_cmd_buffer.py @@ -4629,9 +4629,7 @@ static_assert(offsetof(%(cmd_name)s::Result, %(field_name)s) == %(offset)d, def WriteHandlerExtensionCheck(self, func, f): if func.GetInfo('extension_flag'): f.write(" if (!features().%s) {\n" % func.GetInfo('extension_flag')) - f.write(" LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, \"gl%s\"," - " \"function not available\");\n" % func.original_name) - f.write(" return error::kNoError;") + f.write(" return error::kUnknownCommand;") f.write(" }\n\n") def WriteHandlerDeferReadWrite(self, func, f): diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc index 06bc624..a76f793 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc @@ -7901,12 +7901,9 @@ error::Error GLES2DecoderImpl::HandleDrawArraysInstancedANGLE( const void* cmd_data) { const gles2::cmds::DrawArraysInstancedANGLE& c = *static_cast<const gles2::cmds::DrawArraysInstancedANGLE*>(cmd_data); - if (!features().angle_instanced_arrays) { - LOCAL_SET_GL_ERROR( - GL_INVALID_OPERATION, - "glDrawArraysInstancedANGLE", "function not available"); - return error::kNoError; - } + if (!features().angle_instanced_arrays) + return error::kUnknownCommand; + return DoDrawArrays("glDrawArraysIntancedANGLE", true, static_cast<GLenum>(c.mode), @@ -8049,12 +8046,9 @@ error::Error GLES2DecoderImpl::HandleDrawElementsInstancedANGLE( const void* cmd_data) { const gles2::cmds::DrawElementsInstancedANGLE& c = *static_cast<const gles2::cmds::DrawElementsInstancedANGLE*>(cmd_data); - if (!features().angle_instanced_arrays) { - LOCAL_SET_GL_ERROR( - GL_INVALID_OPERATION, - "glDrawElementsInstancedANGLE", "function not available"); - return error::kNoError; - } + if (!features().angle_instanced_arrays) + return error::kUnknownCommand; + return DoDrawElements("glDrawElementsInstancedANGLE", true, static_cast<GLenum>(c.mode), @@ -8747,12 +8741,9 @@ error::Error GLES2DecoderImpl::HandleVertexAttribDivisorANGLE( const void* cmd_data) { const gles2::cmds::VertexAttribDivisorANGLE& c = *static_cast<const gles2::cmds::VertexAttribDivisorANGLE*>(cmd_data); - if (!features().angle_instanced_arrays) { - LOCAL_SET_GL_ERROR( - GL_INVALID_OPERATION, - "glVertexAttribDivisorANGLE", "function not available"); - return error::kNoError; - } + if (!features().angle_instanced_arrays) + return error::kUnknownCommand; + GLuint index = c.index; GLuint divisor = c.divisor; if (index >= group_->max_vertex_attribs()) { @@ -14657,11 +14648,8 @@ error::Error GLES2DecoderImpl::HandleGenPathsCHROMIUM( static const char kFunctionName[] = "glGenPathsCHROMIUM"; const gles2::cmds::GenPathsCHROMIUM& c = *static_cast<const gles2::cmds::GenPathsCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; GLsizei range = static_cast<GLsizei>(c.range); if (range < 0) { @@ -14687,11 +14675,8 @@ error::Error GLES2DecoderImpl::HandleDeletePathsCHROMIUM( static const char kFunctionName[] = "glDeletePathsCHROMIUM"; const gles2::cmds::DeletePathsCHROMIUM& c = *static_cast<const gles2::cmds::DeletePathsCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; GLsizei range = static_cast<GLsizei>(c.range); if (range < 0) { @@ -14717,11 +14702,8 @@ error::Error GLES2DecoderImpl::HandlePathCommandsCHROMIUM( static const char kFunctionName[] = "glPathCommandsCHROMIUM"; const gles2::cmds::PathCommandsCHROMIUM& c = *static_cast<const gles2::cmds::PathCommandsCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; GLuint service_id = 0; if (!path_manager()->GetPath(static_cast<GLuint>(c.path), &service_id)) { @@ -14825,11 +14807,9 @@ error::Error GLES2DecoderImpl::HandlePathParameterfCHROMIUM( static const char kFunctionName[] = "glPathParameterfCHROMIUM"; const gles2::cmds::PathParameterfCHROMIUM& c = *static_cast<const gles2::cmds::PathParameterfCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLuint service_id = 0; if (!path_manager()->GetPath(static_cast<GLuint>(c.path), &service_id)) { LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, @@ -14879,11 +14859,9 @@ error::Error GLES2DecoderImpl::HandlePathParameteriCHROMIUM( static const char kFunctionName[] = "glPathParameteriCHROMIUM"; const gles2::cmds::PathParameteriCHROMIUM& c = *static_cast<const gles2::cmds::PathParameteriCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLuint service_id = 0; if (!path_manager()->GetPath(static_cast<GLuint>(c.path), &service_id)) { LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, @@ -14931,11 +14909,9 @@ error::Error GLES2DecoderImpl::HandleStencilFillPathCHROMIUM( static const char kFunctionName[] = "glStencilFillPathCHROMIUM"; const gles2::cmds::StencilFillPathCHROMIUM& c = *static_cast<const gles2::cmds::StencilFillPathCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLenum fill_mode = static_cast<GLenum>(c.fillMode); if (!validators_->path_fill_mode.IsValid(fill_mode)) { LOCAL_SET_GL_ERROR_INVALID_ENUM(kFunctionName, fill_mode, "fillMode"); @@ -14964,14 +14940,11 @@ error::Error GLES2DecoderImpl::HandleStencilFillPathCHROMIUM( error::Error GLES2DecoderImpl::HandleStencilStrokePathCHROMIUM( uint32 immediate_data_size, const void* cmd_data) { - static const char kFunctionName[] = "glStencilStrokePathCHROMIUM"; const gles2::cmds::StencilStrokePathCHROMIUM& c = *static_cast<const gles2::cmds::StencilStrokePathCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLuint service_id = 0; if (!path_manager()->GetPath(static_cast<GLuint>(c.path), &service_id)) { return error::kNoError; @@ -14989,11 +14962,9 @@ error::Error GLES2DecoderImpl::HandleCoverFillPathCHROMIUM( static const char kFunctionName[] = "glCoverFillPathCHROMIUM"; const gles2::cmds::CoverFillPathCHROMIUM& c = *static_cast<const gles2::cmds::CoverFillPathCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLenum cover_mode = static_cast<GLenum>(c.coverMode); if (!validators_->path_cover_mode.IsValid(cover_mode)) { LOCAL_SET_GL_ERROR_INVALID_ENUM(kFunctionName, cover_mode, "coverMode"); @@ -15014,11 +14985,9 @@ error::Error GLES2DecoderImpl::HandleCoverStrokePathCHROMIUM( static const char kFunctionName[] = "glCoverStrokePathCHROMIUM"; const gles2::cmds::CoverStrokePathCHROMIUM& c = *static_cast<const gles2::cmds::CoverStrokePathCHROMIUM*>(cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLenum cover_mode = static_cast<GLenum>(c.coverMode); if (!validators_->path_cover_mode.IsValid(cover_mode)) { LOCAL_SET_GL_ERROR_INVALID_ENUM(kFunctionName, cover_mode, "coverMode"); @@ -15040,11 +15009,9 @@ error::Error GLES2DecoderImpl::HandleStencilThenCoverFillPathCHROMIUM( const gles2::cmds::StencilThenCoverFillPathCHROMIUM& c = *static_cast<const gles2::cmds::StencilThenCoverFillPathCHROMIUM*>( cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLenum fill_mode = static_cast<GLenum>(c.fillMode); if (!validators_->path_fill_mode.IsValid(fill_mode)) { LOCAL_SET_GL_ERROR_INVALID_ENUM(kFunctionName, fill_mode, "fillMode"); @@ -15079,11 +15046,9 @@ error::Error GLES2DecoderImpl::HandleStencilThenCoverStrokePathCHROMIUM( const gles2::cmds::StencilThenCoverStrokePathCHROMIUM& c = *static_cast<const gles2::cmds::StencilThenCoverStrokePathCHROMIUM*>( cmd_data); - if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, kFunctionName, - "function not available"); - return error::kNoError; - } + if (!features().chromium_path_rendering) + return error::kUnknownCommand; + GLenum cover_mode = static_cast<GLenum>(c.coverMode); if (!validators_->path_cover_mode.IsValid(cover_mode)) { LOCAL_SET_GL_ERROR_INVALID_ENUM(kFunctionName, cover_mode, "coverMode"); diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h b/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h index 303b702..de3b344 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h +++ b/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h @@ -3984,9 +3984,7 @@ error::Error GLES2DecoderImpl::HandleBlitFramebufferCHROMIUM( *static_cast<const gles2::cmds::BlitFramebufferCHROMIUM*>(cmd_data); (void)c; if (!features().chromium_framebuffer_multisample) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glBlitFramebufferCHROMIUM", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } error::Error error; @@ -4024,10 +4022,7 @@ error::Error GLES2DecoderImpl::HandleRenderbufferStorageMultisampleCHROMIUM( cmd_data); (void)c; if (!features().chromium_framebuffer_multisample) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, - "glRenderbufferStorageMultisampleCHROMIUM", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLenum target = static_cast<GLenum>(c.target); @@ -4075,10 +4070,7 @@ error::Error GLES2DecoderImpl::HandleRenderbufferStorageMultisampleEXT( cmd_data); (void)c; if (!features().multisampled_render_to_texture) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, - "glRenderbufferStorageMultisampleEXT", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLenum target = static_cast<GLenum>(c.target); @@ -4124,10 +4116,7 @@ error::Error GLES2DecoderImpl::HandleFramebufferTexture2DMultisampleEXT( cmd_data); (void)c; if (!features().multisampled_render_to_texture) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, - "glFramebufferTexture2DMultisampleEXT", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLenum target = static_cast<GLenum>(c.target); @@ -4846,9 +4835,7 @@ error::Error GLES2DecoderImpl::HandleDiscardFramebufferEXTImmediate( cmd_data); (void)c; if (!features().ext_discard_framebuffer) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glDiscardFramebufferEXT", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLenum target = static_cast<GLenum>(c.target); @@ -4949,9 +4936,7 @@ error::Error GLES2DecoderImpl::HandleMatrixLoadfCHROMIUMImmediate( *static_cast<const gles2::cmds::MatrixLoadfCHROMIUMImmediate*>(cmd_data); (void)c; if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glMatrixLoadfCHROMIUM", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLenum matrixMode = static_cast<GLenum>(c.matrixMode); @@ -4983,9 +4968,7 @@ error::Error GLES2DecoderImpl::HandleMatrixLoadIdentityCHROMIUM( *static_cast<const gles2::cmds::MatrixLoadIdentityCHROMIUM*>(cmd_data); (void)c; if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glMatrixLoadIdentityCHROMIUM", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLenum matrixMode = static_cast<GLenum>(c.matrixMode); @@ -5005,9 +4988,7 @@ error::Error GLES2DecoderImpl::HandleIsPathCHROMIUM( *static_cast<const gles2::cmds::IsPathCHROMIUM*>(cmd_data); (void)c; if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glIsPathCHROMIUM", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLuint path = c.path; @@ -5028,9 +5009,7 @@ error::Error GLES2DecoderImpl::HandlePathStencilFuncCHROMIUM( *static_cast<const gles2::cmds::PathStencilFuncCHROMIUM*>(cmd_data); (void)c; if (!features().chromium_path_rendering) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glPathStencilFuncCHROMIUM", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } GLenum func = static_cast<GLenum>(c.func); @@ -5057,9 +5036,7 @@ error::Error GLES2DecoderImpl::HandleBlendBarrierKHR( *static_cast<const gles2::cmds::BlendBarrierKHR*>(cmd_data); (void)c; if (!features().blend_equation_advanced) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glBlendBarrierKHR", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } glBlendBarrierKHR(); @@ -5074,10 +5051,7 @@ error::Error GLES2DecoderImpl::HandleApplyScreenSpaceAntialiasingCHROMIUM( cmd_data); (void)c; if (!features().chromium_screen_space_antialiasing) { - LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, - "glApplyScreenSpaceAntialiasingCHROMIUM", - "function not available"); - return error::kNoError; + return error::kUnknownCommand; } DoApplyScreenSpaceAntialiasingCHROMIUM(); diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc index b2147cc..fefc36b 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc @@ -938,8 +938,7 @@ TEST_P(GLES2DecoderWithShaderTest, DrawArraysInstancedANGLEFails) { .RetiresOnSaturation(); DrawArraysInstancedANGLE cmd; cmd.Init(GL_TRIANGLES, 0, kNumVertices, 1); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } TEST_P(GLES2DecoderWithShaderTest, VertexAttribDivisorANGLEFails) { @@ -954,8 +953,7 @@ TEST_P(GLES2DecoderWithShaderTest, VertexAttribDivisorANGLEFails) { VertexAttribDivisorANGLE cmd; cmd.Init(0, 1); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } TEST_P(GLES2DecoderGeometryInstancingTest, @@ -1428,8 +1426,7 @@ TEST_P(GLES2DecoderWithShaderTest, DrawElementsInstancedANGLEFails) { GL_UNSIGNED_SHORT, kValidIndexRangeStart * 2, 1); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } TEST_P(GLES2DecoderGeometryInstancingTest, diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_extensions.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_extensions.cc index 916f2aa..dbb9100 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_extensions.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_extensions.cc @@ -39,92 +39,77 @@ TEST_P(GLES2DecoderTestDisabledExtensions, CHROMIUMPathRenderingDisabled) { 0, }; cmd.Init(GL_PATH_MODELVIEW_CHROMIUM, temp); - EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp))); } { cmds::MatrixLoadIdentityCHROMIUM cmd; cmd.Init(GL_PATH_PROJECTION_CHROMIUM); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::GenPathsCHROMIUM cmd; cmd.Init(0, 0); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::DeletePathsCHROMIUM cmd; cmd.Init(0, 0); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::IsPathCHROMIUM cmd; cmd.Init(kClientPathId, shared_memory_id_, shared_memory_offset_); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::PathCommandsCHROMIUM cmd; cmd.Init(kClientPathId, 0, 0, 0, 0, GL_FLOAT, 0, 0); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::PathParameterfCHROMIUM cmd; cmd.Init(kClientPathId, GL_PATH_STROKE_WIDTH_CHROMIUM, 1.0f); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::PathParameteriCHROMIUM cmd; cmd.Init(kClientPathId, GL_PATH_STROKE_WIDTH_CHROMIUM, 1); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::PathStencilFuncCHROMIUM cmd; cmd.Init(GL_NEVER, 2, 3); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::StencilFillPathCHROMIUM cmd; cmd.Init(kClientPathId, GL_COUNT_UP_CHROMIUM, 1); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::StencilStrokePathCHROMIUM cmd; cmd.Init(kClientPathId, 1, 2); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::CoverFillPathCHROMIUM cmd; cmd.Init(kClientPathId, GL_BOUNDING_BOX_CHROMIUM); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::CoverStrokePathCHROMIUM cmd; cmd.Init(kClientPathId, GL_BOUNDING_BOX_CHROMIUM); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::StencilThenCoverFillPathCHROMIUM cmd; cmd.Init(kClientPathId, GL_COUNT_UP_CHROMIUM, 1, GL_BOUNDING_BOX_CHROMIUM); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } { cmds::StencilThenCoverStrokePathCHROMIUM cmd; cmd.Init(kClientPathId, 1, 2, GL_BOUNDING_BOX_CHROMIUM); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } } diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc index 7e086fd..5c25670 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc @@ -1604,8 +1604,7 @@ TEST_P(GLES2DecoderManualInitTest, GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } class GLES2DecoderMultisampledRenderToTextureTest @@ -1620,8 +1619,7 @@ class GLES2DecoderMultisampledRenderToTextureTest GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); - EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); } void TestRenderbufferStorageMultisampleEXT(const char* extension, @@ -2271,8 +2269,8 @@ TEST_P(GLES2DecoderTest, DiscardFramebufferEXTUnsupported) { cmd.Init(target, count, attachments); // Should not result into a call into GL. - EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(attachments))); - EXPECT_EQ(GL_INVALID_OPERATION, GetGLError()); + EXPECT_EQ(error::kUnknownCommand, + ExecuteImmediateCmd(cmd, sizeof(attachments))); } TEST_P(GLES2DecoderManualInitTest, |