Matteo Bruni : d3dcompiler: Avoid "naked" vars in record dereferences.

Alexandre Julliard julliard at winehq.org
Thu Oct 11 15:25:16 CDT 2012


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

Author: Matteo Bruni <mbruni at codeweavers.com>
Date:   Thu Oct 11 19:48:45 2012 +0200

d3dcompiler: Avoid "naked" vars in record dereferences.

---

 dlls/d3dcompiler_43/utils.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/dlls/d3dcompiler_43/utils.c b/dlls/d3dcompiler_43/utils.c
index eca67c9..5bd39e8 100644
--- a/dlls/d3dcompiler_43/utils.c
+++ b/dlls/d3dcompiler_43/utils.c
@@ -1568,7 +1568,10 @@ struct hlsl_ir_deref *new_record_deref(struct hlsl_ir_node *record, struct hlsl_
     deref->node.type = HLSL_IR_DEREF;
     deref->node.data_type = field->type;
     deref->type = HLSL_IR_DEREF_RECORD;
-    deref->v.record.record = record;
+    if (record->type == HLSL_IR_VAR)
+        deref->v.record.record = &new_var_deref(var_from_node(record))->node;
+    else
+        deref->v.record.record = record;
     deref->v.record.field = field;
     return deref;
 }




More information about the wine-cvs mailing list