GL 3-ish versions of the spec are less clear that an error should be
generated here, so Ken (and I during review) just missed it in
1afe335.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
break;
case API_OPENGL_CORE:
- if (ctx->Array.VAO == ctx->Array.DefaultVAO)
+ /* Section 10.4 (Drawing Commands Using Vertex Arrays) of the OpenGL 4.5
+ * Core Profile spec says:
+ *
+ * "An INVALID_OPERATION error is generated if no vertex array
+ * object is bound (see section 10.3.1)."
+ */
+ if (ctx->Array.VAO == ctx->Array.DefaultVAO) {
+ _mesa_error(ctx, GL_INVALID_OPERATION, "%s(no VAO bound)", function);
return GL_FALSE;
+ }
/* fallthrough */
case API_OPENGL_COMPAT:
{