minor improvement to get_vertex() in-use flag setting
authorBrian <brian.paul@tungstengraphics.com>
Thu, 23 Aug 2007 23:59:17 +0000 (17:59 -0600)
committerBrian <brian.paul@tungstengraphics.com>
Thu, 23 Aug 2007 23:59:17 +0000 (17:59 -0600)
src/mesa/pipe/draw/draw_prim.c

index 509ab376aa6dcff3df04e1fa60776d4ce1d2c830..2ba3cb3eb535cf749ef6d6fd193bcdc04e94b33e 100644 (file)
@@ -421,6 +421,8 @@ static struct vertex_header *get_vertex( struct draw_context *draw,
        */
       if (draw->vcache.referenced & (1 << slot))
         slot = VCACHE_SIZE + draw->vcache.overflow++;
+      else
+         draw->vcache.referenced |= (1 << slot);  /* slot now in use */
 
       draw->vcache.idx[slot] = i;
 
@@ -436,10 +438,6 @@ static struct vertex_header *get_vertex( struct draw_context *draw,
       draw->vcache.vertex[slot]->edgeflag = 1; /*XXX use user's edge flag! */
    }
 
-   /* Mark slot as in-use:
-    */
-   if (slot < VCACHE_SIZE)
-      draw->vcache.referenced |= (1 << slot);
    return draw->vcache.vertex[slot];
 }