Module: Mesa Branch: master Commit: e5ef0cbe0e4e45df6ff74a2a40ddb83d8bc3a8cc URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e5ef0cbe0e4e45df6ff74a2a40ddb83d8bc3a8cc
Author: Ian Romanick <[email protected]> Date: Wed Jul 25 15:10:21 2012 -0700 mesa/es: Validate NormalPointer types in Mesa code rather than the ES wrapper Signed-off-by: Ian Romanick <[email protected]> --- src/mesa/main/APIspec.xml | 8 -------- src/mesa/main/varray.c | 11 ++++++----- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/mesa/main/APIspec.xml b/src/mesa/main/APIspec.xml index 3d5f521..4812758 100644 --- a/src/mesa/main/APIspec.xml +++ b/src/mesa/main/APIspec.xml @@ -1329,14 +1329,6 @@ <param name="stride" type="GLsizei"/> <param name="pointer" type="const GLvoid *"/> </proto> - - <desc name="type"> - <value name="GL_BYTE"/> - <value name="GL_SHORT"/> - <value name="GL_FLOAT"/> - <value name="GL_FIXED"/> - <value name="GL_HALF_FLOAT_OES" category="OES_vertex_half_float"/> - </desc> </template> <template name="TexCoordPointer"> diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index f3c869f..165b957 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -268,12 +268,13 @@ _mesa_VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr) void GLAPIENTRY _mesa_NormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr ) { - const GLbitfield legalTypes = (BYTE_BIT | SHORT_BIT | INT_BIT | - HALF_BIT | FLOAT_BIT | DOUBLE_BIT | - FIXED_ES_BIT | - UNSIGNED_INT_2_10_10_10_REV_BIT | - INT_2_10_10_10_REV_BIT); GET_CURRENT_CONTEXT(ctx); + const GLbitfield legalTypes = (ctx->API == API_OPENGLES) + ? (BYTE_BIT | SHORT_BIT | FLOAT_BIT | FIXED_ES_BIT) + : (BYTE_BIT | SHORT_BIT | INT_BIT | + HALF_BIT | FLOAT_BIT | DOUBLE_BIT | + UNSIGNED_INT_2_10_10_10_REV_BIT | + INT_2_10_10_10_REV_BIT); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); update_array(ctx, "glNormalPointer", VERT_ATTRIB_NORMAL, _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
