[PATCH 4/5] d3dcompiler: Store the pointer to the struct field in the dereference node.

Matteo Bruni mbruni at codeweavers.com
Wed Sep 26 12:22:34 CDT 2012


---
 dlls/d3dcompiler_43/d3dcompiler_private.h |    2 +-
 dlls/d3dcompiler_43/utils.c               |    3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/dlls/d3dcompiler_43/d3dcompiler_private.h b/dlls/d3dcompiler_43/d3dcompiler_private.h
index 03fe66c..5ed0bda 100644
--- a/dlls/d3dcompiler_43/d3dcompiler_private.h
+++ b/dlls/d3dcompiler_43/d3dcompiler_private.h
@@ -903,7 +903,7 @@ struct hlsl_ir_deref
         struct
         {
             struct hlsl_ir_node *record;
-            const char *field;
+            struct hlsl_struct_field *field;
         } record;
     } v;
 };
diff --git a/dlls/d3dcompiler_43/utils.c b/dlls/d3dcompiler_43/utils.c
index 7fbf3b5..b957643 100644
--- a/dlls/d3dcompiler_43/utils.c
+++ b/dlls/d3dcompiler_43/utils.c
@@ -1912,7 +1912,7 @@ static void debug_dump_ir_deref(const struct hlsl_ir_deref *deref)
             break;
         case HLSL_IR_DEREF_RECORD:
             debug_dump_instr(deref->v.record.record);
-            TRACE(".%s", debugstr_a(deref->v.record.field));
+            TRACE(".%s", debugstr_a(deref->v.record.field->name));
             break;
     }
 }
@@ -2261,7 +2261,6 @@ static void free_ir_deref(struct hlsl_ir_deref *deref)
             break;
         case HLSL_IR_DEREF_RECORD:
             free_instr(deref->v.record.record);
-            d3dcompiler_free((void *)deref->v.record.field);
             break;
     }
     d3dcompiler_free(deref);
-- 
1.7.8.6




More information about the wine-patches mailing list