From ee351ea178daed07e121617d324e069b8906d345 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 20 Dec 2012 17:00:06 +0100 Subject: [PATCH] st/mesa: fix assertion failures with 2101010 vertex formats Reviewed-by: Brian Paul --- src/mesa/state_tracker/st_atom_array.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/mesa/state_tracker/st_atom_array.c b/src/mesa/state_tracker/st_atom_array.c index 15f5d1c95ea..2437245bd25 100644 --- a/src/mesa/state_tracker/st_atom_array.c +++ b/src/mesa/state_tracker/st_atom_array.c @@ -403,9 +403,9 @@ setup_interleaved_attribs(const struct st_vertex_program *vp, const GLuint mesaAttr = vp->index_to_input[attr]; const struct gl_client_array *array = arrays[mesaAttr]; unsigned src_offset = (unsigned) (array->Ptr - low_addr); - GLuint element_size = array->_ElementSize; - assert(element_size == array->Size * _mesa_sizeof_type(array->Type)); + assert(array->_ElementSize == + _mesa_bytes_per_vertex_attrib(array->Size, array->Type)); velements[attr].src_offset = src_offset; velements[attr].instance_divisor = array->InstanceDivisor; @@ -474,7 +474,8 @@ setup_non_interleaved_attribs(struct st_context *st, struct gl_buffer_object *bufobj = array->BufferObj; GLsizei stride = array->StrideB; - assert(array->_ElementSize == array->Size * _mesa_sizeof_type(array->Type)); + assert(array->_ElementSize == + _mesa_bytes_per_vertex_attrib(array->Size, array->Type)); if (_mesa_is_bufferobj(bufobj)) { /* Attribute data is in a VBO. -- 2.30.2