Don't crash if VAO extensions are not available

Fixes #1585
This commit is contained in:
John Firebaugh
2015-05-18 16:33:54 -07:00
parent 4af4c817f1
commit 63ea3d4bef
3 changed files with 5 additions and 4 deletions

View File

@@ -31,8 +31,9 @@ static gl::ExtensionFunction<
{"GL_APPLE_vertex_array_object", "glGenVertexArraysAPPLE"}
});
void VertexArrayObject::Bind(GLuint array) {
MBGL_CHECK_ERROR(BindVertexArray(array));
void VertexArrayObject::Unbind() {
if (!BindVertexArray) return;
MBGL_CHECK_ERROR(BindVertexArray(0));
}
void VertexArrayObject::Delete(GLsizei n, const GLuint* arrays) {

View File

@@ -11,7 +11,7 @@ namespace mbgl {
class VertexArrayObject : public util::noncopyable {
public:
static void Bind(GLuint array);
static void Unbind();
static void Delete(GLsizei n, const GLuint* arrays);
VertexArrayObject();

View File

@@ -263,7 +263,7 @@ void Painter::render(const Style& style, TransformState state_, TimePoint time)
const gl::debugging::group _("cleanup");
MBGL_CHECK_ERROR(glBindTexture(GL_TEXTURE_2D, 0));
MBGL_CHECK_ERROR(VertexArrayObject::Bind(0));
MBGL_CHECK_ERROR(VertexArrayObject::Unbind());
}
}