| Index: gpu/command_buffer/service/feature_info.cc
|
| diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc
|
| index 5d9584827d4fe4d36f1259d9877707d6c7f99fed..396311cffb1b6690d7c84ff0a2052ebc885206e1 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");
|
|
|
|
|