st_update_fp( struct st_context *st )
{
struct st_fragment_program *stfp;
- struct st_fp_variant_key key;
assert(st->ctx->FragmentProgram._Current);
stfp = st_fragment_program(st->ctx->FragmentProgram._Current);
!stfp->variants->key.bitmap) {
shader = stfp->variants->driver_shader;
} else {
- memset(&key, 0, sizeof(key));
+ struct st_fp_variant_key key = {0};
+
key.st = st->has_shareable_shaders ? NULL : st;
/* _NEW_FRAG_CLAMP */
st_update_vp( struct st_context *st )
{
struct st_vertex_program *stvp;
- struct st_vp_variant_key key;
/* find active shader and params -- Should be covered by
* ST_NEW_VERTEX_PROGRAM
stvp->variants->key.passthrough_edgeflags == st->vertdata_edgeflags) {
st->vp_variant = stvp->variants;
} else {
- memset(&key, 0, sizeof key);
+ struct st_vp_variant_key key = {0};
+
key.st = st->has_shareable_shaders ? NULL : st;
/* When this is true, we will add an extra input to the vertex
{
struct pipe_context *pipe = st->pipe;
struct st_basic_variant *v;
- struct st_basic_variant_key key;
+ struct st_basic_variant_key key = {0};
- memset(&key, 0, sizeof(key));
key.st = st->has_shareable_shaders ? NULL : st;
/* Search for existing variant */
switch (prog->Target) {
case GL_VERTEX_PROGRAM_ARB: {
struct st_vertex_program *p = (struct st_vertex_program *)prog;
- struct st_vp_variant_key key;
+ struct st_vp_variant_key key = {0};
- memset(&key, 0, sizeof(key));
key.st = st->has_shareable_shaders ? NULL : st;
st_get_vp_variant(st, p, &key);
break;
case GL_FRAGMENT_PROGRAM_ARB: {
struct st_fragment_program *p = (struct st_fragment_program *)prog;
- struct st_fp_variant_key key;
+ struct st_fp_variant_key key = {0};
- memset(&key, 0, sizeof(key));
key.st = st->has_shareable_shaders ? NULL : st;
st_get_fp_variant(st, p, &key);
break;