mesa: Add a vao parameter to vertex_binding_divisor
authorFredrik Höglund <fredrik@kde.org>
Mon, 2 Mar 2015 17:50:49 +0000 (18:50 +0100)
committerFredrik Höglund <fredrik@kde.org>
Fri, 8 May 2015 13:31:03 +0000 (15:31 +0200)
This is needed to implement VertexArrayBindingDivisor.

Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
src/mesa/main/varray.c

index 0cfa948a0530bc98a459cb45824ddeaa22e3a7b9..90d5bcbcb90b41e3b25c25476698239e7b496222 100644 (file)
@@ -184,10 +184,11 @@ bind_vertex_buffer(struct gl_context *ctx,
  * given by bindingIndex.
  */
 static void
-vertex_binding_divisor(struct gl_context *ctx, GLuint bindingIndex,
+vertex_binding_divisor(struct gl_context *ctx,
+                       struct gl_vertex_array_object *vao,
+                       GLuint bindingIndex,
                        GLuint divisor)
 {
-   struct gl_vertex_array_object *vao = ctx->Array.VAO;
    struct gl_vertex_buffer_binding *binding =
       &vao->VertexBinding[bindingIndex];
 
@@ -1474,7 +1475,7 @@ _mesa_VertexAttribDivisor(GLuint index, GLuint divisor)
     *       VertexBindingDivisor(index, divisor);"
     */
    vertex_attrib_binding(ctx, vao, genericIndex, genericIndex);
-   vertex_binding_divisor(ctx, genericIndex, divisor);
+   vertex_binding_divisor(ctx, vao, genericIndex, divisor);
 }
 
 
@@ -2076,7 +2077,8 @@ _mesa_VertexBindingDivisor(GLuint bindingIndex, GLuint divisor)
       return;
    }
 
-   vertex_binding_divisor(ctx, VERT_ATTRIB_GENERIC(bindingIndex), divisor);
+   vertex_binding_divisor(ctx, ctx->Array.VAO,
+                          VERT_ATTRIB_GENERIC(bindingIndex), divisor);
 }