Module: wine Branch: master Commit: 0405733ff72ecaec591dc80d62602a8c6bf091cc URL: http://source.winehq.org/git/wine.git/?a=commit;h=0405733ff72ecaec591dc80d62...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Sun Dec 5 23:46:53 2010 +0100
wined3d: Explicitly pass shader_data and reg_maps to reserved_vs_const().
---
dlls/wined3d/arb_program_shader.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index 63d1495..05e4fcd 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -344,15 +344,14 @@ static BOOL need_helper_const(const struct arb_vshader_private *shader_data, return FALSE; }
-static unsigned int reserved_vs_const(IWineD3DVertexShaderImpl *shader, const struct wined3d_gl_info *gl_info) +static unsigned int reserved_vs_const(const struct arb_vshader_private *shader_data, + const struct shader_reg_maps *reg_maps, const struct wined3d_gl_info *gl_info) { unsigned int ret = 1; /* We use one PARAM for the pos fixup, and in some cases one to load * some immediate values into the shader. */ - if (need_helper_const(shader->baseShader.backend_data, - &shader->baseShader.reg_maps, gl_info)) ++ret; - if (need_rel_addr_const(shader->baseShader.backend_data, - &shader->baseShader.reg_maps, gl_info)) ++ret; + if (need_helper_const(shader_data, reg_maps, gl_info)) ++ret; + if (need_rel_addr_const(shader_data, reg_maps, gl_info)) ++ret; return ret; }
@@ -725,6 +724,7 @@ static DWORD shader_generate_arb_declarations(IWineD3DBaseShader *iface, const s } else { + const struct arb_vshader_private *shader_data = This->baseShader.backend_data; max_constantsF = gl_info->limits.arb_vs_native_constants; /* 96 is the minimum MAX_PROGRAM_ENV_PARAMETERS_ARB value. * Also prevents max_constantsF from becoming less than 0 and @@ -735,7 +735,7 @@ static DWORD shader_generate_arb_declarations(IWineD3DBaseShader *iface, const s if(This->baseShader.reg_maps.usesrelconstF) { DWORD highest_constf = 0, clip_limit;
- max_constantsF -= reserved_vs_const((IWineD3DVertexShaderImpl *)This, gl_info); + max_constantsF -= reserved_vs_const(shader_data, reg_maps, gl_info); max_constantsF -= count_bits(This->baseShader.reg_maps.integer_constants);
for(i = 0; i < This->baseShader.limits.constant_float; i++)