mesa: added _ElementSize field to gl_client_array
authorBrian Paul <brianp@vmware.com>
Wed, 6 May 2009 19:00:35 +0000 (13:00 -0600)
committerBrian Paul <brianp@vmware.com>
Thu, 7 May 2009 16:12:33 +0000 (10:12 -0600)
Will be handy for bounds checking later...

src/mesa/main/mtypes.h
src/mesa/main/varray.c

index bdb1081ca887673a593257a86ceda2c2f74425ea..716e5c655d87ff43380201e24f2003c278f102f6 100644 (file)
@@ -1541,6 +1541,7 @@ struct gl_client_array
    const GLubyte *Ptr;          /**< Points to array data */
    GLboolean Enabled;          /**< Enabled flag is a boolean */
    GLboolean Normalized;        /**< GL_ARB_vertex_program */
+   GLuint _ElementSize;         /**< size of each element in bytes */
 
    struct gl_buffer_object *BufferObj;/**< GL_ARB_vertex_buffer_object */
    GLuint _MaxElement;          /**< max element index into array buffer */
index 106252e46098c12455b014da6a43661e928ef564..629be600d4ceb78063c28055a8f223d545673664 100644 (file)
@@ -63,6 +63,8 @@ update_array(GLcontext *ctx, struct gl_client_array *array,
    array->StrideB = stride ? stride : elementSize;
    array->Normalized = normalized;
    array->Ptr = (const GLubyte *) ptr;
+   array->_ElementSize = elementSize;
+
 #if FEATURE_ARB_vertex_buffer_object
    _mesa_reference_buffer_object(ctx, &array->BufferObj,
                                  ctx->Array.ArrayBufferObj);