=?UTF-8?Q?Stefan=20D=C3=B6singer=20?=: wined3d: Initialize WINED3DTA_TEMP.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Mar 11 10:00:43 CDT 2015


Module: wine
Branch: master
Commit: 406cfefc2f98f8d52efe2d689c9f11564905232d
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=406cfefc2f98f8d52efe2d689c9f11564905232d

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Wed Mar 11 10:33:46 2015 +0100

wined3d: Initialize WINED3DTA_TEMP.

---

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

diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index 688bdb7..e7ee1c1 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -6298,6 +6298,9 @@ static GLuint gen_arbfp_ffp_shader(const struct ffp_frag_settings *settings, con
     if (lowest_disabled_stage < 7 && settings->emul_clipplanes)
         shader_addline(&buffer, "KIL fragment.texcoord[7];\n");
 
+    if (tempreg_used || settings->sRGB_write)
+        shader_addline(&buffer, "MOV tempreg, 0.0;\n");
+
     /* Generate texture sampling instructions) */
     for (stage = 0; stage < MAX_TEXTURES && settings->op[stage].cop != WINED3D_TOP_DISABLE; ++stage)
     {
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 0804997..0b239f9 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -5413,7 +5413,7 @@ static GLuint shader_glsl_generate_ffp_fragment_shader(struct wined3d_shader_buf
     shader_addline(buffer, "vec4 tmp0, tmp1;\n");
     shader_addline(buffer, "vec4 ret;\n");
     if (tempreg_used || settings->sRGB_write)
-        shader_addline(buffer, "vec4 temp_reg;\n");
+        shader_addline(buffer, "vec4 temp_reg = vec4(0.0);\n");
     shader_addline(buffer, "vec4 arg0, arg1, arg2;\n");
 
     for (stage = 0; stage < MAX_TEXTURES; ++stage)




More information about the wine-cvs mailing list