| 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 931b8feb6bb7add853a9b0c0e5c3cd0bc0d5894e..cc703d4ec3a206dbc4405f876a1376422d4d84f6 100644 | 
| --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc | 
| +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc | 
| @@ -3769,6 +3769,11 @@ void GLES2DecoderImpl::DeleteTransformFeedbacksHelper( | 
| TransformFeedback* transform_feedback = GetTransformFeedback( | 
| client_ids[ii]); | 
| if (transform_feedback) { | 
| +      if (transform_feedback->active()) { | 
| +        LOCAL_SET_GL_ERROR(GL_INVALID_OPERATION, "glDeleteTransformFeedbacks", | 
| +                           "Deleting transform feedback is active"); | 
| +        return; | 
| +      } | 
| if (state_.bound_transform_feedback.get() == transform_feedback) { | 
| // Bind to the default transform feedback. | 
| DCHECK(state_.default_transform_feedback.get()); | 
| @@ -5762,6 +5767,20 @@ bool GLES2DecoderImpl::GetHelper( | 
| *params = static_cast<GLint>(read_buffer); | 
| } | 
| return true; | 
| +      case GL_TRANSFORM_FEEDBACK_ACTIVE: | 
| +        *num_written = 1; | 
| +        if (params) { | 
| +          *params = | 
| +              static_cast<GLint>(state_.bound_transform_feedback->active()); | 
| +        } | 
| +        return true; | 
| +      case GL_TRANSFORM_FEEDBACK_PAUSED: | 
| +        *num_written = 1; | 
| +        if (params) { | 
| +          *params = | 
| +              static_cast<GLint>(state_.bound_transform_feedback->paused()); | 
| +        } | 
| +        return true; | 
| } | 
| } | 
| switch (pname) { | 
|  |