Fix off-by-one in calculations for wrapped trifan, polygon primitives
authorKeith Whitwell <keith@tungstengraphics.com>
Wed, 4 Feb 2004 16:59:30 +0000 (16:59 +0000)
committerKeith Whitwell <keith@tungstengraphics.com>
Wed, 4 Feb 2004 16:59:30 +0000 (16:59 +0000)
src/mesa/tnl_dd/t_dd_dmatmp.h

index a9bee50..e8681dc 100644 (file)
@@ -353,7 +353,7 @@ static void TAG(render_tri_fan_verts)( GLcontext *ctx,
         currentsz = dmasz;
       }
 
-      for (j = start + 1 ; j + 1 < count; j += nr - 1 ) {
+      for (j = start + 1 ; j + 1 < count; j += nr - 2 ) {
         void *tmp;
         nr = MIN2( currentsz, count - j + 1 );
         tmp = ALLOC_VERTS( nr );
@@ -392,7 +392,7 @@ static void TAG(render_poly_verts)( GLcontext *ctx,
         currentsz = dmasz;
       }
 
-      for (j = start + 1 ; j + 1 < count ; j += nr - 1 ) {
+      for (j = start + 1 ; j + 1 < count ; j += nr - 2 ) {
         void *tmp;
         nr = MIN2( currentsz, count - j + 1 );
         tmp = ALLOC_VERTS( nr );
@@ -919,7 +919,7 @@ static void TAG(render_tri_fan_elts)( GLcontext *ctx,
         currentsz = dmasz;
       }
 
-      for (j = start + 1 ; j + 1 < count; j += nr - 1 ) {
+      for (j = start + 1 ; j + 1 < count; j += nr - 2 ) {
         void *tmp;
         nr = MIN2( currentsz, count - j + 1 );
         tmp = ALLOC_ELTS( nr );
@@ -956,7 +956,7 @@ static void TAG(render_poly_elts)( GLcontext *ctx,
         currentsz = dmasz;
       }
 
-      for (j = start + 1 ; j + 1 < count; j += nr - 1 ) {
+      for (j = start + 1 ; j + 1 < count; j += nr - 2 ) {
         void *tmp;
         nr = MIN2( currentsz, count - j + 1 );
         tmp = ALLOC_ELTS( nr );