From 53499c64b212c68527f84f5e672cdfc95935f643 Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Sat, 24 Apr 2010 10:33:44 +0100 Subject: cso_cache: Ensure irrelevant state of the blend state is zeroed. Otherwise drivers that bake the full blend state in a key end up having uninitialized memory in their key. Courtesy of valgrind. --- src/gallium/auxiliary/cso_cache/cso_context.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/gallium') diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c b/src/gallium/auxiliary/cso_cache/cso_context.c index 6fd4bd3642..6d0b420798 100644 --- a/src/gallium/auxiliary/cso_cache/cso_context.c +++ b/src/gallium/auxiliary/cso_cache/cso_context.c @@ -349,6 +349,7 @@ enum pipe_error cso_set_blend(struct cso_context *ctx, if (!cso) return PIPE_ERROR_OUT_OF_MEMORY; + memset(&cso->state, 0, sizeof cso->state); memcpy(&cso->state, templ, key_size); cso->data = ctx->pipe->create_blend_state(ctx->pipe, &cso->state); cso->delete_state = (cso_state_callback)ctx->pipe->delete_blend_state; -- cgit v1.2.3