wined3d: Pass a struct wined3d_shader_register to shader_is_scalar().
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 3be9422..92be8dc 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -1242,7 +1242,7 @@
{
DWORD mask = param->write_mask;
- if (shader_is_scalar(param->reg.type, param->reg.idx))
+ if (shader_is_scalar(¶m->reg))
{
mask = WINED3DSP_WRITEMASK_0;
*write_mask = '\0';
@@ -1285,7 +1285,7 @@
static void shader_glsl_get_swizzle(const struct wined3d_shader_src_param *param,
BOOL fixup, DWORD mask, char *swizzle_str)
{
- if (shader_is_scalar(param->reg.type, param->reg.idx))
+ if (shader_is_scalar(¶m->reg))
*swizzle_str = '\0';
else
shader_glsl_swizzle_to_str(param->swizzle, fixup, mask, swizzle_str);
@@ -1970,7 +1970,7 @@
char mask_char[6];
BOOL temp_destination = FALSE;
- if (shader_is_scalar(ins->src[0].reg.type, ins->src[0].reg.idx))
+ if (shader_is_scalar(&ins->src[0].reg))
{
write_mask = shader_glsl_append_dst(ins->ctx->buffer, ins);
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 8bda76a..2b63364 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -2594,13 +2594,13 @@
return type == WINED3D_SHADER_TYPE_VERTEX;
}
-static inline BOOL shader_is_scalar(WINED3DSHADER_PARAM_REGISTER_TYPE register_type, UINT register_idx)
+static inline BOOL shader_is_scalar(const struct wined3d_shader_register *reg)
{
- switch (register_type)
+ switch (reg->type)
{
case WINED3DSPR_RASTOUT:
/* oFog & oPts */
- if (register_idx != 0) return TRUE;
+ if (reg->idx != 0) return TRUE;
/* oPos */
return FALSE;
@@ -2611,7 +2611,7 @@
return TRUE;
case WINED3DSPR_MISCTYPE:
- switch(register_idx)
+ switch(reg->idx)
{
case 0: /* vPos */
return FALSE;