diff options
-rw-r--r-- | src/gallium/drivers/r600/r600_shader.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 3e42309bde0..37884d0f5b2 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -274,7 +274,8 @@ static int r600_shader_update(struct pipe_context *ctx, struct r600_pipe_shader return 0; /* doing a full memcmp fell over the refcount */ if ((rshader->vertex_elements.count == rctx->vertex_elements->count) && - (!memcmp(&rshader->vertex_elements.elements, &rctx->vertex_elements->elements, 32 * sizeof(struct pipe_vertex_element)))) { + (!memcmp(&rshader->vertex_elements.elements, &rctx->vertex_elements->elements, + rctx->vertex_elements->count * sizeof(struct pipe_vertex_element)))) { return 0; } rshader->vertex_elements = *rctx->vertex_elements; |