Mesa (master): mesa: Handle zero-stride arrays in _mesa_update_array_max_element()

Fredrik Höglund fredrik at kemper.freedesktop.org
Thu Nov 7 17:20:58 UTC 2013


Module: Mesa
Branch: master
Commit: 965900e8305d3a3b966c97ad37699cb73ba3e4f1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=965900e8305d3a3b966c97ad37699cb73ba3e4f1

Author: Fredrik Höglund <fredrik at kde.org>
Date:   Thu Apr  4 19:55:50 2013 +0200

mesa: Handle zero-stride arrays in _mesa_update_array_max_element()

Reviewed-by: Eric Anholt <eric at anholt.net>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

---

 src/mesa/main/varray.h |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/mesa/main/varray.h b/src/mesa/main/varray.h
index a75cb7d..8a9487c 100644
--- a/src/mesa/main/varray.h
+++ b/src/mesa/main/varray.h
@@ -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;




More information about the mesa-commit mailing list