Index: gpu/command_buffer/service/gles2_cmd_decoder_passthrough_handlers_autogen.cc |
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_passthrough_handlers_autogen.cc b/gpu/command_buffer/service/gles2_cmd_decoder_passthrough_handlers_autogen.cc |
index e049c999926ce4f6e9482d7e3912e1d4f13f7c64..a49a87b797d36fafa5486ef38aa984560c581f3b 100644 |
--- a/gpu/command_buffer/service/gles2_cmd_decoder_passthrough_handlers_autogen.cc |
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_passthrough_handlers_autogen.cc |
@@ -4273,6 +4273,35 @@ error::Error GLES2DecoderPassthroughImpl::HandleDrawBuffersEXTImmediate( |
return error::kNoError; |
} |
+error::Error GLES2DecoderPassthroughImpl:: |
+ HandleScheduleCALayerFilterEffectsCHROMIUMImmediate( |
+ uint32_t immediate_data_size, |
+ const void* cmd_data) { |
+ const gles2::cmds::ScheduleCALayerFilterEffectsCHROMIUMImmediate& c = |
+ *static_cast< |
+ const gles2::cmds::ScheduleCALayerFilterEffectsCHROMIUMImmediate*>( |
+ cmd_data); |
+ (void)c; |
+ GLsizei count = static_cast<GLsizei>(c.count); |
+ uint32_t data_size = 0; |
+ if (count >= 0 && |
+ !GLES2Util::ComputeDataSize(count, sizeof(GLCALayerFilterEffect), 1, |
+ &data_size)) { |
+ return error::kOutOfBounds; |
+ } |
+ if (data_size > immediate_data_size) { |
+ return error::kOutOfBounds; |
+ } |
+ const GLCALayerFilterEffect* effects = |
+ GetImmediateDataAs<const GLCALayerFilterEffect*>(c, data_size, |
+ immediate_data_size); |
+ error::Error error = DoScheduleCALayerFilterEffectsCHROMIUM(count, effects); |
+ if (error != error::kNoError) { |
+ return error; |
+ } |
+ return error::kNoError; |
+} |
+ |
error::Error |
GLES2DecoderPassthroughImpl::HandleScheduleCALayerInUseQueryCHROMIUMImmediate( |
uint32_t immediate_data_size, |