Chromium Code Reviews| Index: gpu/command_buffer/service/context_state.cc |
| diff --git a/gpu/command_buffer/service/context_state.cc b/gpu/command_buffer/service/context_state.cc |
| index 5aa24fbacd095e7c09ea022d30254b49588ba9fe..7259d753b628349c4598f445b835408592d50610 100644 |
| --- a/gpu/command_buffer/service/context_state.cc |
| +++ b/gpu/command_buffer/service/context_state.cc |
| @@ -77,6 +77,16 @@ bool TargetIsSupported(const FeatureInfo* feature_info, GLuint target) { |
| } |
| } |
| +bool BufferTargetIsSupported(GLuint target) { |
| + switch (target) { |
| + case GL_ARRAY_BUFFER: |
| + return true; |
| + default: |
| + NOTREACHED(); |
| + return false; |
| + } |
| +} |
| + |
| GLuint GetBufferId(const Buffer* buffer) { |
| if (buffer) |
| return buffer->service_id(); |
| @@ -306,6 +316,11 @@ void ContextState::DoLineWidth(GLfloat width) const { |
| std::min(std::max(width, line_width_min_), line_width_max_)); |
| } |
| +void ContextState::RestoreBufferBinding(unsigned int target) const { |
| + if (BufferTargetIsSupported(target)) |
|
piman
2017/03/30 18:31:43
Why this logic? Other targets *are* supported at t
Chandan
2017/03/30 19:22:39
I added this logic to keep it consistent with !sta
|
| + glBindBuffer(target, GetBufferId(bound_array_buffer.get())); |
| +} |
| + |
| void ContextState::RestoreBufferBindings() const { |
| if (vertex_attrib_manager.get()) { |
| Buffer* element_array_buffer = |