From 9e1a44b6dce0d32c6f7739aae7b679c77689116d Mon Sep 17 00:00:00 2001 From: Tobias Jakobi Date: Sat, 18 Apr 2009 16:05:54 +0200 Subject: [wined3d] add ps_np2fixup_t ptr to shader_arb_priv --- dlls/wined3d/arb_program_shader.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index 4ee18e9..0fbe172 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -65,6 +65,7 @@ struct shader_arb_priv { GLuint depth_blt_fprogram_id[tex_type_count]; BOOL use_arbfp_fixed_func; struct hash_table_t *fragment_shaders; + struct ps_np2fixup_t *current_np2fixup; }; /******************************************************** @@ -1816,10 +1817,12 @@ static void shader_arb_select(IWineD3DDevice *iface, BOOL usePS, BOOL useVS) { if (usePS) { struct ps_compile_args compile_args; + struct ps_compiled_shader *gl_shader; TRACE("Using pixel shader\n"); find_ps_compile_args((IWineD3DPixelShaderImpl *) This->stateBlock->pixelShader, This->stateBlock, &compile_args); - priv->current_fprogram_id = find_gl_pshader((IWineD3DPixelShaderImpl *) This->stateBlock->pixelShader, - &compile_args)->prgId; + gl_shader = find_gl_pshader((IWineD3DPixelShaderImpl *) This->stateBlock->pixelShader, &compile_args); + priv->current_fprogram_id = gl_shader->prgId; + priv->current_np2fixup = (compile_args.np2_fixup) ? &gl_shader->np2fixup : NULL; /* Bind the fragment program */ GL_EXTCALL(glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, priv->current_fprogram_id)); -- 1.6.0.6