| Index: gpu/command_buffer/service/gles2_cmd_decoder_autogen.h | 
| =================================================================== | 
| --- gpu/command_buffer/service/gles2_cmd_decoder_autogen.h	(revision 134729) | 
| +++ gpu/command_buffer/service/gles2_cmd_decoder_autogen.h	(working copy) | 
| @@ -2736,5 +2736,97 @@ | 
| return error::kNoError; | 
| } | 
|  | 
| +error::Error GLES2DecoderImpl::HandleProduceTextureCHROMIUM( | 
| +    uint32 immediate_data_size, const gles2::ProduceTextureCHROMIUM& c) { | 
| +  GLenum target = static_cast<GLenum>(c.target); | 
| +  uint32 data_size; | 
| +  if (!ComputeDataSize(1, sizeof(GLbyte), 64, &data_size)) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  const GLbyte* mailbox = GetSharedMemoryAs<const GLbyte*>( | 
| +      c.mailbox_shm_id, c.mailbox_shm_offset, data_size); | 
| +  if (!validators_->texture_target.IsValid(target)) { | 
| +    SetGLError( | 
| +        GL_INVALID_ENUM, "glProduceTextureCHROMIUM: target GL_INVALID_ENUM"); | 
| +    return error::kNoError; | 
| +  } | 
| +  if (mailbox == NULL) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  DoProduceTextureCHROMIUM(target, mailbox); | 
| +  return error::kNoError; | 
| +} | 
| + | 
| +error::Error GLES2DecoderImpl::HandleProduceTextureCHROMIUMImmediate( | 
| +    uint32 immediate_data_size, | 
| +    const gles2::ProduceTextureCHROMIUMImmediate& c) { | 
| +  GLenum target = static_cast<GLenum>(c.target); | 
| +  uint32 data_size; | 
| +  if (!ComputeDataSize(1, sizeof(GLbyte), 64, &data_size)) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  if (data_size > immediate_data_size) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  const GLbyte* mailbox = GetImmediateDataAs<const GLbyte*>( | 
| +      c, data_size, immediate_data_size); | 
| +  if (!validators_->texture_target.IsValid(target)) { | 
| +    SetGLError( | 
| +        GL_INVALID_ENUM, "glProduceTextureCHROMIUM: target GL_INVALID_ENUM"); | 
| +    return error::kNoError; | 
| +  } | 
| +  if (mailbox == NULL) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  DoProduceTextureCHROMIUM(target, mailbox); | 
| +  return error::kNoError; | 
| +} | 
| + | 
| +error::Error GLES2DecoderImpl::HandleConsumeTextureCHROMIUM( | 
| +    uint32 immediate_data_size, const gles2::ConsumeTextureCHROMIUM& c) { | 
| +  GLenum target = static_cast<GLenum>(c.target); | 
| +  uint32 data_size; | 
| +  if (!ComputeDataSize(1, sizeof(GLbyte), 64, &data_size)) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  const GLbyte* mailbox = GetSharedMemoryAs<const GLbyte*>( | 
| +      c.mailbox_shm_id, c.mailbox_shm_offset, data_size); | 
| +  if (!validators_->texture_target.IsValid(target)) { | 
| +    SetGLError( | 
| +        GL_INVALID_ENUM, "glConsumeTextureCHROMIUM: target GL_INVALID_ENUM"); | 
| +    return error::kNoError; | 
| +  } | 
| +  if (mailbox == NULL) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  DoConsumeTextureCHROMIUM(target, mailbox); | 
| +  return error::kNoError; | 
| +} | 
| + | 
| +error::Error GLES2DecoderImpl::HandleConsumeTextureCHROMIUMImmediate( | 
| +    uint32 immediate_data_size, | 
| +    const gles2::ConsumeTextureCHROMIUMImmediate& c) { | 
| +  GLenum target = static_cast<GLenum>(c.target); | 
| +  uint32 data_size; | 
| +  if (!ComputeDataSize(1, sizeof(GLbyte), 64, &data_size)) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  if (data_size > immediate_data_size) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  const GLbyte* mailbox = GetImmediateDataAs<const GLbyte*>( | 
| +      c, data_size, immediate_data_size); | 
| +  if (!validators_->texture_target.IsValid(target)) { | 
| +    SetGLError( | 
| +        GL_INVALID_ENUM, "glConsumeTextureCHROMIUM: target GL_INVALID_ENUM"); | 
| +    return error::kNoError; | 
| +  } | 
| +  if (mailbox == NULL) { | 
| +    return error::kOutOfBounds; | 
| +  } | 
| +  DoConsumeTextureCHROMIUM(target, mailbox); | 
| +  return error::kNoError; | 
| +} | 
| + | 
| #endif  // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ | 
|  | 
|  |