fxRasterPrimitive wasn't always receiving the reduced primitive
authorDaniel Borca <dborca@users.sourceforge.net>
Fri, 17 Dec 2004 08:08:37 +0000 (08:08 +0000)
committerDaniel Borca <dborca@users.sourceforge.net>
Fri, 17 Dec 2004 08:08:37 +0000 (08:08 +0000)
src/mesa/drivers/glide/fxtris.c

index f53c2b31d0f4265b956b51203f2542a99286b7a3..a83596fba561685c017d9d2ea635e99e86ae2d19 100644 (file)
@@ -63,6 +63,19 @@ GLboolean fxMultipass_ColorSum (GLcontext *ctx, GLuint pass);
 static void fxRasterPrimitive( GLcontext *ctx, GLenum prim );
 static void fxRenderPrimitive( GLcontext *ctx, GLenum prim );
 
+static GLenum reduced_prim[GL_POLYGON+1] = {
+   GL_POINTS,
+   GL_LINES,
+   GL_LINES,
+   GL_LINES,
+   GL_TRIANGLES,
+   GL_TRIANGLES,
+   GL_TRIANGLES,
+   GL_TRIANGLES,
+   GL_TRIANGLES,
+   GL_TRIANGLES
+};
+
 /***********************************************************************
  *          Macros for t_dd_tritmp.h to draw basic primitives          *
  ***********************************************************************/
@@ -644,8 +657,8 @@ do {                                                \
  *            Functions to draw basic unfilled primitives              *
  ***********************************************************************/
 
-#define RASTERIZE(x) if (fxMesa->raster_primitive != x) \
-                        fxRasterPrimitive( ctx, x )
+#define RASTERIZE(x) if (fxMesa->raster_primitive != reduced_prim[x]) \
+                        fxRasterPrimitive( ctx, reduced_prim[x] )
 #define RENDER_PRIMITIVE fxMesa->render_primitive
 #define IND FX_FALLBACK_BIT
 #define TAG(x) x
@@ -1408,20 +1421,6 @@ static void fxRunPipeline( GLcontext *ctx )
 }
 
 
-static GLenum reduced_prim[GL_POLYGON+1] = {
-   GL_POINTS,
-   GL_LINES,
-   GL_LINES,
-   GL_LINES,
-   GL_TRIANGLES,
-   GL_TRIANGLES,
-   GL_TRIANGLES,
-   GL_TRIANGLES,
-   GL_TRIANGLES,
-   GL_TRIANGLES
-};
-
-
 
 /* Always called between RenderStart and RenderFinish --> We already
  * hold the lock.