[PATCH 5/5] wined3d: Use the absolute source value in shader_glsl_rsq().

Henri Verbeet hverbeet at codeweavers.com
Mon Feb 1 06:52:59 CST 2010


---
 dlls/wined3d/glsl_shader.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 6357e06..4892bfe 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -2255,12 +2255,12 @@ static void shader_glsl_rsq(const struct wined3d_shader_instruction *ins)
 
     if (mask_size > 1)
     {
-        shader_addline(buffer, "vec%d(%s == 0.0 ? FLT_MAX : inversesqrt(%s)));\n",
+        shader_addline(buffer, "vec%d(%s == 0.0 ? FLT_MAX : inversesqrt(abs(%s))));\n",
                 mask_size, src_param.param_str, src_param.param_str);
     }
     else
     {
-        shader_addline(buffer, "%s == 0.0 ? FLT_MAX : inversesqrt(%s));\n",
+        shader_addline(buffer, "%s == 0.0 ? FLT_MAX : inversesqrt(abs(%s)));\n",
                 src_param.param_str, src_param.param_str);
     }
 }
-- 
1.6.4.4




More information about the wine-patches mailing list