| Index: ui/gl/gl_bindings_autogen_egl.cc
|
| diff --git a/ui/gl/gl_bindings_autogen_egl.cc b/ui/gl/gl_bindings_autogen_egl.cc
|
| index ea756bc0c863da7f36ed74aa81afc302968de394..47766bdad493392f3bb5d5e43f9007a14abf063e 100644
|
| --- a/ui/gl/gl_bindings_autogen_egl.cc
|
| +++ b/ui/gl/gl_bindings_autogen_egl.cc
|
| @@ -104,47 +104,50 @@ void DriverEGL::InitializeStaticBindings() {
|
| fn.eglWaitNativeFn =
|
| reinterpret_cast<eglWaitNativeProc>(GetGLProcAddress("eglWaitNative"));
|
| fn.eglWaitSyncKHRFn = 0;
|
| - std::string client_extensions(GetClientExtensions());
|
| - client_extensions += " ";
|
| - ALLOW_UNUSED_LOCAL(client_extensions);
|
| +}
|
|
|
| +void DriverEGL::InitializeExtensionBindings(
|
| + const std::set<std::string>& enabled_extensions) {
|
| ext.b_EGL_EXT_platform_base =
|
| - client_extensions.find("EGL_EXT_platform_base ") != std::string::npos;
|
| -
|
| - debug_fn.eglGetPlatformDisplayEXTFn = 0;
|
| - if (ext.b_EGL_EXT_platform_base) {
|
| - fn.eglGetPlatformDisplayEXTFn =
|
| - reinterpret_cast<eglGetPlatformDisplayEXTProc>(
|
| - GetGLProcAddress("eglGetPlatformDisplayEXT"));
|
| - DCHECK(fn.eglGetPlatformDisplayEXTFn);
|
| - }
|
| - std::string extensions(GetPlatformExtensions());
|
| - extensions += " ";
|
| - ALLOW_UNUSED_LOCAL(extensions);
|
| -
|
| + enabled_extensions.find("EGL_EXT_platform_base") !=
|
| + enabled_extensions.end();
|
| ext.b_EGL_ANGLE_d3d_share_handle_client_buffer =
|
| - extensions.find("EGL_ANGLE_d3d_share_handle_client_buffer ") !=
|
| - std::string::npos;
|
| + enabled_extensions.find("EGL_ANGLE_d3d_share_handle_client_buffer") !=
|
| + enabled_extensions.end();
|
| ext.b_EGL_ANGLE_query_surface_pointer =
|
| - extensions.find("EGL_ANGLE_query_surface_pointer ") != std::string::npos;
|
| + enabled_extensions.find("EGL_ANGLE_query_surface_pointer") !=
|
| + enabled_extensions.end();
|
| ext.b_EGL_ANGLE_surface_d3d_texture_2d_share_handle =
|
| - extensions.find("EGL_ANGLE_surface_d3d_texture_2d_share_handle ") !=
|
| - std::string::npos;
|
| + enabled_extensions.find(
|
| + "EGL_ANGLE_surface_d3d_texture_2d_share_handle") !=
|
| + enabled_extensions.end();
|
| ext.b_EGL_CHROMIUM_sync_control =
|
| - extensions.find("EGL_CHROMIUM_sync_control ") != std::string::npos;
|
| + enabled_extensions.find("EGL_CHROMIUM_sync_control") !=
|
| + enabled_extensions.end();
|
| ext.b_EGL_KHR_fence_sync =
|
| - extensions.find("EGL_KHR_fence_sync ") != std::string::npos;
|
| + enabled_extensions.find("EGL_KHR_fence_sync") != enabled_extensions.end();
|
| ext.b_EGL_KHR_gl_texture_2D_image =
|
| - extensions.find("EGL_KHR_gl_texture_2D_image ") != std::string::npos;
|
| - ext.b_EGL_KHR_image = extensions.find("EGL_KHR_image ") != std::string::npos;
|
| + enabled_extensions.find("EGL_KHR_gl_texture_2D_image") !=
|
| + enabled_extensions.end();
|
| + ext.b_EGL_KHR_image =
|
| + enabled_extensions.find("EGL_KHR_image") != enabled_extensions.end();
|
| ext.b_EGL_KHR_image_base =
|
| - extensions.find("EGL_KHR_image_base ") != std::string::npos;
|
| + enabled_extensions.find("EGL_KHR_image_base") != enabled_extensions.end();
|
| ext.b_EGL_KHR_reusable_sync =
|
| - extensions.find("EGL_KHR_reusable_sync ") != std::string::npos;
|
| + enabled_extensions.find("EGL_KHR_reusable_sync") !=
|
| + enabled_extensions.end();
|
| ext.b_EGL_KHR_wait_sync =
|
| - extensions.find("EGL_KHR_wait_sync ") != std::string::npos;
|
| + enabled_extensions.find("EGL_KHR_wait_sync") != enabled_extensions.end();
|
| ext.b_EGL_NV_post_sub_buffer =
|
| - extensions.find("EGL_NV_post_sub_buffer ") != std::string::npos;
|
| + enabled_extensions.find("EGL_NV_post_sub_buffer") !=
|
| + enabled_extensions.end();
|
| + debug_fn.eglGetPlatformDisplayEXTFn = 0;
|
| + if (ext.b_EGL_EXT_platform_base) {
|
| + fn.eglGetPlatformDisplayEXTFn =
|
| + reinterpret_cast<eglGetPlatformDisplayEXTProc>(
|
| + GetGLProcAddress("eglGetPlatformDisplayEXT"));
|
| + DCHECK(fn.eglGetPlatformDisplayEXTFn);
|
| + }
|
|
|
| debug_fn.eglClientWaitSyncKHRFn = 0;
|
| if (ext.b_EGL_KHR_fence_sync || ext.b_EGL_KHR_reusable_sync) {
|
|
|