Module: wine Branch: master Commit: c13351c05af43aa542938e0c0935b154a8166905 URL: https://source.winehq.org/git/wine.git/?a=commit;h=c13351c05af43aa542938e0c0... Author: Paul Gofman <gofmanp(a)gmail.com> Date: Thu Jun 13 16:57:01 2019 +0300 wined3d: Do not zero 'w' with zero norm for 'nrm' opcode in GLSL backend. Signed-off-by: Paul Gofman <gofmanp(a)gmail.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/wined3d/glsl_shader.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 9202fb6..326733d 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -4117,16 +4117,8 @@ static void shader_glsl_nrm(const struct wined3d_shader_instruction *ins) src_param.param_str, src_param.param_str); shader_glsl_append_dst(buffer, ins); - if (mask_size > 1) - { - shader_addline(buffer, "tmp0.x == 0.0 ? vec%u(0.0) : (%s * inversesqrt(tmp0.x)));\n", - mask_size, src_param.param_str); - } - else - { - shader_addline(buffer, "tmp0.x == 0.0 ? 0.0 : (%s * inversesqrt(tmp0.x)));\n", - src_param.param_str); - } + shader_addline(buffer, "tmp0.x == 0.0 ? %s : (%s * inversesqrt(tmp0.x)));\n", + src_param.param_str, src_param.param_str); } static void shader_glsl_scalar_op(const struct wined3d_shader_instruction *ins)