vbo: Pull the _mesa_set_draw_vao calls out of the if clauses.
[mesa.git] / src / mesa / vbo / vbo_save_loopback.c
index 36b1f71eb5fe3c328fbe05bf1cd2e0e67b0f9536..eeb4580c54ce7879705dd028bf66554362470d09 100644 (file)
@@ -133,30 +133,6 @@ loopback_prim(struct gl_context *ctx,
 }
 
 
-/**
- * Primitives generated by DrawArrays/DrawElements/Rectf may be
- * caught here.  If there is no primitive in progress, execute them
- * normally, otherwise need to track and discard the generated
- * primitives.
- */
-static void
-loopback_weak_prim(struct gl_context *ctx,
-                   const struct _mesa_prim *prim)
-{
-   /* Use the prim_weak flag to ensure that if this primitive
-    * wraps, we don't mistake future vertex_lists for part of the
-    * surrounding primitive.
-    *
-    * While this flag is set, we are simply disposing of data
-    * generated by an operation now known to be a noop.
-    */
-   if (prim->begin)
-      ctx->Driver.CurrentExecPrimitive |= VBO_SAVE_PRIM_WEAK;
-   if (prim->end)
-      ctx->Driver.CurrentExecPrimitive &= ~VBO_SAVE_PRIM_WEAK;
-}
-
-
 static inline void
 append_attr(GLuint *nr, struct loopback_attr la[], int i, int shift,
             const struct gl_vertex_array_object *vao)
@@ -227,10 +203,6 @@ _vbo_loopback_vertex_list(struct gl_context *ctx,
    const struct _mesa_prim *prims = node->prims;
    const GLuint prim_count = node->prim_count;
    for (GLuint i = 0; i < prim_count; i++) {
-      if ((prims[i].mode & VBO_SAVE_PRIM_WEAK) && _mesa_inside_begin_end(ctx)) {
-         loopback_weak_prim(ctx, &prims[i]);
-      } else {
-         loopback_prim(ctx, buffer, &prims[i], wrap_count, stride, la, nr);
-      }
+      loopback_prim(ctx, buffer, &prims[i], wrap_count, stride, la, nr);
    }
 }