Signed-off-by: Henri Verbeet hverbeet@codeweavers.com --- dlls/wined3d/shader.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c index 2bd201a791c..6061efa269b 100644 --- a/dlls/wined3d/shader.c +++ b/dlls/wined3d/shader.c @@ -4159,14 +4159,11 @@ void find_ps_compile_args(const struct wined3d_state *state, const struct wined3 args->render_offscreen = shader->reg_maps.vpos && gl_info->supported[ARB_FRAGMENT_COORD_CONVENTIONS] ? context->render_offscreen : 0;
- if (!gl_info->supported[WINED3D_GL_LEGACY_CONTEXT]) + for (i = 0; i < ARRAY_SIZE(state->fb->render_targets); ++i) { - for (i = 0; i < ARRAY_SIZE(state->fb->render_targets); ++i) - { - struct wined3d_rendertarget_view *rtv = state->fb->render_targets[i]; - if (rtv && rtv->format->id == WINED3DFMT_A8_UNORM) - args->rt_alpha_swizzle |= 1u << i; - } + struct wined3d_rendertarget_view *rtv = state->fb->render_targets[i]; + if (rtv && rtv->format->id == WINED3DFMT_A8_UNORM && !is_identity_fixup(rtv->format->color_fixup)) + args->rt_alpha_swizzle |= 1u << i; } }