[WINED3D] Resync ARB mnxn function with GLSL mnxn function.

Ivan Gyurdiev ivg231 at gmail.com
Sun Jul 2 20:29:46 CDT 2006


This prevents a crash on attempted access to reg_maps field, which is 
uninitialized.

-------------- next part --------------
---
 dlls/wined3d/arb_program_shader.c |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index 20a7e3a..753789f 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -800,10 +800,14 @@ void vshader_hw_mnxn(SHADER_OPCODE_ARG* 
     int nComponents = 0;
     SHADER_OPCODE_ARG tmpArg;
 
+    memset(&tmpArg, 0, sizeof(SHADER_OPCODE_ARG));
+
     /* Set constants for the temporary argument */
-    tmpArg.shader   = arg->shader;
-    tmpArg.buffer   = arg->buffer;
-    tmpArg.src[0]   = arg->src[0];
+    tmpArg.shader      = arg->shader;
+    tmpArg.buffer      = arg->buffer;
+    tmpArg.src[0]      = arg->src[0];
+    tmpArg.src_addr[0] = arg->src_addr[0];
+    tmpArg.reg_maps = arg->reg_maps;
 
     switch(arg->opcode->opcode) {
     case D3DSIO_M4x4:
-- 
1.4.0



More information about the wine-patches mailing list