| Index: android_webview/browser/in_process_renderer/in_process_view_renderer.cc
|
| diff --git a/android_webview/browser/in_process_renderer/in_process_view_renderer.cc b/android_webview/browser/in_process_renderer/in_process_view_renderer.cc
|
| index 6ecdd6215e5e3cae02d437723a1a970f04860cdd..0121f11e45a7266a86c2a866160a07671539e3a4 100644
|
| --- a/android_webview/browser/in_process_renderer/in_process_view_renderer.cc
|
| +++ b/android_webview/browser/in_process_renderer/in_process_view_renderer.cc
|
| @@ -49,11 +49,20 @@ namespace {
|
| class GLStateRestore {
|
| public:
|
| GLStateRestore() {
|
| +#if !defined(NDEBUG)
|
| + {
|
| + GLint vertex_array_buffer_binding;
|
| + glGetIntegerv(GL_ARRAY_BUFFER_BINDING, &vertex_array_buffer_binding);
|
| + DCHECK_EQ(0, vertex_array_buffer_binding);
|
| +
|
| + GLint index_array_buffer_binding;
|
| + glGetIntegerv(GL_ELEMENT_ARRAY_BUFFER_BINDING,
|
| + &index_array_buffer_binding);
|
| + DCHECK_EQ(0, index_array_buffer_binding);
|
| + }
|
| +#endif // !defined(NDEBUG)
|
| glGetIntegerv(GL_TEXTURE_BINDING_EXTERNAL_OES,
|
| &texture_external_oes_binding_);
|
| - glGetIntegerv(GL_ARRAY_BUFFER_BINDING, &vertex_array_buffer_binding_);
|
| - glGetIntegerv(GL_ELEMENT_ARRAY_BUFFER_BINDING,
|
| - &index_array_buffer_binding_);
|
| glGetIntegerv(GL_PACK_ALIGNMENT, &pack_alignment_);
|
| glGetIntegerv(GL_UNPACK_ALIGNMENT, &unpack_alignment_);
|
|
|
| @@ -85,15 +94,10 @@ class GLStateRestore {
|
| glGetBooleanv(GL_SCISSOR_TEST, &scissor_test_);
|
| glGetIntegerv(GL_SCISSOR_BOX, scissor_box_);
|
| glGetIntegerv(GL_CURRENT_PROGRAM, ¤t_program_);
|
| -
|
| - DCHECK_EQ(0, vertex_array_buffer_binding_);
|
| - DCHECK_EQ(0, index_array_buffer_binding_);
|
| }
|
|
|
| ~GLStateRestore() {
|
| glBindTexture(GL_TEXTURE_EXTERNAL_OES, texture_external_oes_binding_);
|
| - glBindBuffer(GL_ARRAY_BUFFER, vertex_array_buffer_binding_);
|
| - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, index_array_buffer_binding_);
|
| glPixelStorei(GL_PACK_ALIGNMENT, pack_alignment_);
|
| glPixelStorei(GL_UNPACK_ALIGNMENT, unpack_alignment_);
|
|
|
| @@ -148,12 +152,13 @@ class GLStateRestore {
|
| scissor_box_[0], scissor_box_[1], scissor_box_[2], scissor_box_[3]);
|
|
|
| glUseProgram(current_program_);
|
| +
|
| + glBindBuffer(GL_ARRAY_BUFFER, 0);
|
| + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
|
| }
|
|
|
| private:
|
| GLint texture_external_oes_binding_;
|
| - GLint vertex_array_buffer_binding_;
|
| - GLint index_array_buffer_binding_;
|
| GLint pack_alignment_;
|
| GLint unpack_alignment_;
|
|
|
|
|