Mesa (master): vbo: seed initial max_element value with a more likely candidate

Keith Whitwell keithw at kemper.freedesktop.org
Tue Sep 23 21:12:14 PDT 2008


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

Author: Keith Whitwell <keith at tungstengraphics.com>
Date:   Mon Aug 25 10:59:45 2008 +0100

vbo: seed initial max_element value with a more likely candidate
(cherry picked from commit 026e7731e549e0777c010348460fd48b3d75a843)

---

 src/mesa/vbo/vbo_exec_array.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c
index 68c555a..82f4db1 100644
--- a/src/mesa/vbo/vbo_exec_array.c
+++ b/src/mesa/vbo/vbo_exec_array.c
@@ -45,9 +45,9 @@ static void get_minmax_index( GLuint count, GLuint type,
    switch(type) {
    case GL_UNSIGNED_INT: {
       const GLuint *ui_indices = (const GLuint *)indices;
-      GLuint max_ui = ui_indices[0];
+      GLuint max_ui = ui_indices[count-1];
       GLuint min_ui = ui_indices[0];
-      for (i = 1; i < count; i++) {
+      for (i = 0; i < count; i++) {
 	 if (ui_indices[i] > max_ui) max_ui = ui_indices[i];
 	 if (ui_indices[i] < min_ui) min_ui = ui_indices[i];
       }
@@ -57,9 +57,9 @@ static void get_minmax_index( GLuint count, GLuint type,
    }
    case GL_UNSIGNED_SHORT: {
       const GLushort *us_indices = (const GLushort *)indices;
-      GLuint max_us = us_indices[0];
+      GLuint max_us = us_indices[count-1];
       GLuint min_us = us_indices[0];
-      for (i = 1; i < count; i++) {
+      for (i = 0; i < count; i++) {
 	 if (us_indices[i] > max_us) max_us = us_indices[i];
 	 if (us_indices[i] < min_us) min_us = us_indices[i];
       }
@@ -69,9 +69,9 @@ static void get_minmax_index( GLuint count, GLuint type,
    }
    case GL_UNSIGNED_BYTE: {
       const GLubyte *ub_indices = (const GLubyte *)indices;
-      GLuint max_ub = ub_indices[0];
+      GLuint max_ub = ub_indices[count-1];
       GLuint min_ub = ub_indices[0];
-      for (i = 1; i < count; i++) {
+      for (i = 0; i < count; i++) {
 	 if (ub_indices[i] > max_ub) max_ub = ub_indices[i];
 	 if (ub_indices[i] < min_ub) min_ub = ub_indices[i];
       }



More information about the mesa-commit mailing list