diff options
Diffstat (limited to 'gpu/command_buffer/service/feature_info.cc')
-rw-r--r-- | gpu/command_buffer/service/feature_info.cc | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc index 5d95848..396311c 100644 --- a/gpu/command_buffer/service/feature_info.cc +++ b/gpu/command_buffer/service/feature_info.cc @@ -117,7 +117,8 @@ FeatureInfo::FeatureFlags::FeatureFlags() enable_shader_name_hashing(false), enable_samplers(false), ext_draw_buffers(false), - ext_frag_depth(false) { + ext_frag_depth(false), + use_async_readpixels(false) { } FeatureInfo::Workarounds::Workarounds() : @@ -623,6 +624,16 @@ void FeatureInfo::AddFeatures(const CommandLine& command_line) { feature_flags_.ext_frag_depth = true; } + bool ui_gl_fence_works = + extensions.Contains("GL_NV_fence") || + extensions.Contains("GL_ARB_sync"); + + if (ui_gl_fence_works && + extensions.Contains("GL_ARB_pixel_buffer_object") && + !workarounds_.disable_async_readpixels) { + feature_flags_.use_async_readpixels = true; + } + if (!disallowed_features_.swap_buffer_complete_callback) AddExtensionString("GL_CHROMIUM_swapbuffers_complete_callback"); |