mesa: Handle zero-stride arrays in _mesa_update_array_max_element()

Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
Fredrik Höglund 2013-04-04 19:55:50 +02:00
parent fb370f89db
commit 965900e830

View file

@ -51,8 +51,10 @@ _mesa_update_array_max_element(struct gl_client_array *array)
GLsizeiptrARB bufSize = (GLsizeiptrARB) array->BufferObj->Size;
if (offset < bufSize) {
array->_MaxElement = (bufSize - offset + array->StrideB
- array->_ElementSize) / array->StrideB;
const GLuint stride = array->StrideB ?
array->StrideB : array->_ElementSize;
array->_MaxElement = (bufSize - offset + stride
- array->_ElementSize) / stride;
}
else {
array->_MaxElement = 0;