| Index: gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| index eecf5a2155fcbcf20b85167678816c728bf4d713..4cd19e2e0ebd694febff9dfd0049a73c9fed971a 100644
|
| --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| @@ -655,6 +655,7 @@ class GLES2DecoderImpl : public GLES2Decoder, public ErrorStateClient {
|
|
|
| ErrorState* GetErrorState() override;
|
| const ContextState* GetContextState() override { return &state_; }
|
| + scoped_refptr<ShaderTranslatorInterface> GetTranslator(GLenum type) override;
|
|
|
| void SetShaderCacheCallback(const ShaderCacheCallback& callback) override;
|
| void SetFenceSyncReleaseCallback(
|
| @@ -9323,6 +9324,11 @@ void GLES2DecoderImpl::DoTransformFeedbackVaryings(
|
| program->TransformFeedbackVaryings(count, varyings, buffer_mode);
|
| }
|
|
|
| +scoped_refptr<ShaderTranslatorInterface> GLES2DecoderImpl::GetTranslator(
|
| + GLenum type) {
|
| + return type == GL_VERTEX_SHADER ? vertex_translator_ : fragment_translator_;
|
| +}
|
| +
|
| void GLES2DecoderImpl::DoCompileShader(GLuint client_id) {
|
| TRACE_EVENT0("gpu", "GLES2DecoderImpl::DoCompileShader");
|
| Shader* shader = GetShaderInfoNotProgram(client_id, "glCompileShader");
|
| @@ -9331,10 +9337,8 @@ void GLES2DecoderImpl::DoCompileShader(GLuint client_id) {
|
| }
|
|
|
| scoped_refptr<ShaderTranslatorInterface> translator;
|
| - if (!feature_info_->disable_shader_translator()) {
|
| - translator = shader->shader_type() == GL_VERTEX_SHADER ?
|
| - vertex_translator_ : fragment_translator_;
|
| - }
|
| + if (!feature_info_->disable_shader_translator())
|
| + translator = GetTranslator(shader->shader_type());
|
|
|
| const Shader::TranslatedShaderSourceType source_type =
|
| feature_info_->feature_flags().angle_translated_shader_source ?
|
|
|