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.
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user