| Index: ui/gl/gl_bindings_autogen_gl.cc
|
| diff --git a/ui/gl/gl_bindings_autogen_gl.cc b/ui/gl/gl_bindings_autogen_gl.cc
|
| index 391fe6f8929acf8d800e88ccf07131c1286d904f..46b4bcba6c1983824166737c9f570348b7cc0f9e 100644
|
| --- a/ui/gl/gl_bindings_autogen_gl.cc
|
| +++ b/ui/gl/gl_bindings_autogen_gl.cc
|
| @@ -437,7 +437,9 @@ void DriverGL::InitializeStaticBindings() {
|
| fn.glWaitSyncFn = 0;
|
| }
|
|
|
| -void DriverGL::InitializeDynamicBindings(GLContext* context) {
|
| +void DriverGL::InitializeDynamicBindings(
|
| + GLContext* context,
|
| + const std::vector<std::string>& disabled_extensions) {
|
| DCHECK(context && context->IsCurrent(NULL));
|
| const GLVersionInfo* ver = context->GetVersionInfo();
|
| ALLOW_UNUSED_LOCAL(ver);
|
| @@ -445,94 +447,189 @@ void DriverGL::InitializeDynamicBindings(GLContext* context) {
|
| ALLOW_UNUSED_LOCAL(extensions);
|
|
|
| ext.b_GL_ANGLE_framebuffer_blit =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ANGLE_framebuffer_blit") == disabled_extensions.end() &&
|
| extensions.find("GL_ANGLE_framebuffer_blit ") != std::string::npos;
|
| ext.b_GL_ANGLE_framebuffer_multisample =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ANGLE_framebuffer_multisample") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_ANGLE_framebuffer_multisample ") != std::string::npos;
|
| ext.b_GL_ANGLE_instanced_arrays =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ANGLE_instanced_arrays") == disabled_extensions.end() &&
|
| extensions.find("GL_ANGLE_instanced_arrays ") != std::string::npos;
|
| ext.b_GL_ANGLE_translated_shader_source =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ANGLE_translated_shader_source") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_ANGLE_translated_shader_source ") !=
|
| - std::string::npos;
|
| + std::string::npos;
|
| ext.b_GL_APPLE_fence =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_APPLE_fence") == disabled_extensions.end() &&
|
| extensions.find("GL_APPLE_fence ") != std::string::npos;
|
| ext.b_GL_APPLE_vertex_array_object =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_APPLE_vertex_array_object") == disabled_extensions.end() &&
|
| extensions.find("GL_APPLE_vertex_array_object ") != std::string::npos;
|
| ext.b_GL_ARB_draw_buffers =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_draw_buffers") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_draw_buffers ") != std::string::npos;
|
| ext.b_GL_ARB_draw_instanced =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_draw_instanced") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_draw_instanced ") != std::string::npos;
|
| ext.b_GL_ARB_get_program_binary =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_get_program_binary") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_get_program_binary ") != std::string::npos;
|
| ext.b_GL_ARB_instanced_arrays =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_instanced_arrays") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_instanced_arrays ") != std::string::npos;
|
| ext.b_GL_ARB_map_buffer_range =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_map_buffer_range") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_map_buffer_range ") != std::string::npos;
|
| ext.b_GL_ARB_occlusion_query =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_occlusion_query") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_occlusion_query ") != std::string::npos;
|
| ext.b_GL_ARB_robustness =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_robustness") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_robustness ") != std::string::npos;
|
| - ext.b_GL_ARB_sync = extensions.find("GL_ARB_sync ") != std::string::npos;
|
| + ext.b_GL_ARB_sync =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_sync") == disabled_extensions.end() &&
|
| + extensions.find("GL_ARB_sync ") != std::string::npos;
|
| ext.b_GL_ARB_texture_storage =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_texture_storage") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_texture_storage ") != std::string::npos;
|
| ext.b_GL_ARB_timer_query =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_timer_query") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_timer_query ") != std::string::npos;
|
| ext.b_GL_ARB_vertex_array_object =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_ARB_vertex_array_object") == disabled_extensions.end() &&
|
| extensions.find("GL_ARB_vertex_array_object ") != std::string::npos;
|
| ext.b_GL_CHROMIUM_gles_depth_binding_hack =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_CHROMIUM_gles_depth_binding_hack") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_CHROMIUM_gles_depth_binding_hack ") !=
|
| - std::string::npos;
|
| + std::string::npos;
|
| ext.b_GL_CHROMIUM_glgetstringi_hack =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_CHROMIUM_glgetstringi_hack") == disabled_extensions.end() &&
|
| extensions.find("GL_CHROMIUM_glgetstringi_hack ") != std::string::npos;
|
| ext.b_GL_EXT_debug_marker =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_debug_marker") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_debug_marker ") != std::string::npos;
|
| ext.b_GL_EXT_direct_state_access =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_direct_state_access") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_direct_state_access ") != std::string::npos;
|
| ext.b_GL_EXT_discard_framebuffer =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_discard_framebuffer") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_discard_framebuffer ") != std::string::npos;
|
| ext.b_GL_EXT_disjoint_timer_query =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_disjoint_timer_query") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_disjoint_timer_query ") != std::string::npos;
|
| ext.b_GL_EXT_draw_buffers =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_draw_buffers") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_draw_buffers ") != std::string::npos;
|
| ext.b_GL_EXT_framebuffer_blit =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_framebuffer_blit") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_framebuffer_blit ") != std::string::npos;
|
| ext.b_GL_EXT_framebuffer_multisample =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_framebuffer_multisample") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_EXT_framebuffer_multisample ") != std::string::npos;
|
| ext.b_GL_EXT_framebuffer_object =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_framebuffer_object") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_framebuffer_object ") != std::string::npos;
|
| ext.b_GL_EXT_map_buffer_range =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_map_buffer_range") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_map_buffer_range ") != std::string::npos;
|
| ext.b_GL_EXT_multisampled_render_to_texture =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_multisampled_render_to_texture") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_EXT_multisampled_render_to_texture ") !=
|
| - std::string::npos;
|
| + std::string::npos;
|
| ext.b_GL_EXT_occlusion_query_boolean =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_occlusion_query_boolean") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_EXT_occlusion_query_boolean ") != std::string::npos;
|
| ext.b_GL_EXT_robustness =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_robustness") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_robustness ") != std::string::npos;
|
| ext.b_GL_EXT_texture_storage =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_texture_storage") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_texture_storage ") != std::string::npos;
|
| ext.b_GL_EXT_timer_query =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_EXT_timer_query") == disabled_extensions.end() &&
|
| extensions.find("GL_EXT_timer_query ") != std::string::npos;
|
| ext.b_GL_IMG_multisampled_render_to_texture =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_IMG_multisampled_render_to_texture") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_IMG_multisampled_render_to_texture ") !=
|
| - std::string::npos;
|
| + std::string::npos;
|
| ext.b_GL_KHR_blend_equation_advanced =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_KHR_blend_equation_advanced") ==
|
| + disabled_extensions.end() &&
|
| extensions.find("GL_KHR_blend_equation_advanced ") != std::string::npos;
|
| ext.b_GL_KHR_robustness =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_KHR_robustness") == disabled_extensions.end() &&
|
| extensions.find("GL_KHR_robustness ") != std::string::npos;
|
| ext.b_GL_NV_blend_equation_advanced =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_NV_blend_equation_advanced") == disabled_extensions.end() &&
|
| extensions.find("GL_NV_blend_equation_advanced ") != std::string::npos;
|
| - ext.b_GL_NV_fence = extensions.find("GL_NV_fence ") != std::string::npos;
|
| + ext.b_GL_NV_fence =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_NV_fence") == disabled_extensions.end() &&
|
| + extensions.find("GL_NV_fence ") != std::string::npos;
|
| ext.b_GL_NV_path_rendering =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_NV_path_rendering") == disabled_extensions.end() &&
|
| extensions.find("GL_NV_path_rendering ") != std::string::npos;
|
| ext.b_GL_OES_EGL_image =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_OES_EGL_image") == disabled_extensions.end() &&
|
| extensions.find("GL_OES_EGL_image ") != std::string::npos;
|
| ext.b_GL_OES_get_program_binary =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_OES_get_program_binary") == disabled_extensions.end() &&
|
| extensions.find("GL_OES_get_program_binary ") != std::string::npos;
|
| ext.b_GL_OES_mapbuffer =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_OES_mapbuffer") == disabled_extensions.end() &&
|
| extensions.find("GL_OES_mapbuffer ") != std::string::npos;
|
| ext.b_GL_OES_vertex_array_object =
|
| + std::find(disabled_extensions.begin(), disabled_extensions.end(),
|
| + "GL_OES_vertex_array_object") == disabled_extensions.end() &&
|
| extensions.find("GL_OES_vertex_array_object ") != std::string::npos;
|
| -
|
| debug_fn.glBeginQueryFn = 0;
|
| if (!ver->is_es || ver->IsAtLeastGLES(3u, 0u)) {
|
| fn.glBeginQueryFn =
|
|
|