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 2804c3c6bb170d457405c1741e107e80d174acfa..276d178156ccd96e9b88f59fa30aa22501b74eaf 100644 |
--- a/gpu/command_buffer/service/feature_info.cc |
+++ b/gpu/command_buffer/service/feature_info.cc |
@@ -134,7 +134,8 @@ FeatureInfo::FeatureFlags::FeatureFlags() |
is_angle(false), |
is_swiftshader(false), |
angle_texture_usage(false), |
- ext_texture_storage(false) { |
+ ext_texture_storage(false), |
+ chromium_path_rendering(false) { |
} |
FeatureInfo::Workarounds::Workarounds() : |
@@ -776,6 +777,14 @@ void FeatureInfo::InitializeFeatures() { |
AddExtensionString("GL_EXT_discard_framebuffer"); |
feature_flags_.ext_discard_framebuffer = true; |
} |
+ |
+ if (extensions.Contains("GL_NV_path_rendering") && |
+ extensions.Contains("GL_EXT_direct_state_access")) { |
+ AddExtensionString("GL_CHROMIUM_path_rendering"); |
+ feature_flags_.chromium_path_rendering = true; |
+ validators_.g_l_state.AddValue(GL_MODELVIEW_MATRIX_CHROMIUM); |
+ validators_.g_l_state.AddValue(GL_PROJECTION_MATRIX_CHROMIUM); |
+ } |
} |
void FeatureInfo::AddExtensionString(const std::string& str) { |