aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLInterface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/gl/GrGLInterface.cpp')
-rw-r--r--src/gpu/gl/GrGLInterface.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/gpu/gl/GrGLInterface.cpp b/src/gpu/gl/GrGLInterface.cpp
index 6fcd6ab578..ea9c29ee95 100644
--- a/src/gpu/gl/GrGLInterface.cpp
+++ b/src/gpu/gl/GrGLInterface.cpp
@@ -349,5 +349,25 @@ bool GrGLInterface::validate(GrGLBinding binding) const {
}
}
+ if (kDesktop_GrGLBinding == binding) {
+ if (glVer >= GR_GL_VER(3, 0) || extensions.has("GL_ARB_vertex_array_object")) {
+ if (NULL == fBindVertexArray ||
+ NULL == fDeleteVertexArrays ||
+ NULL == fGenVertexArrays) {
+ return false;
+ }
+ }
+ } else {
+#if 0 // Remove this #if once Chromium interfaces set these pointers
+ if (extensions.has("GL_OES_vertex_array_object")) {
+ if (NULL == fBindVertexArray ||
+ NULL == fDeleteVertexArrays ||
+ NULL == fGenVertexArrays) {
+ return false;
+ }
+ }
+#endif
+ }
+
return true;
}