Rico Schüller : d3d10: Add D3D10_EOO_PARSED_OBJECT in parse_fx10_object().

Alexandre Julliard julliard at winehq.org
Mon Jan 25 11:21:13 CST 2010


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

Author: Rico Schüller <kgbricola at web.de>
Date:   Sun Jan 24 14:26:46 2010 +0100

d3d10: Add D3D10_EOO_PARSED_OBJECT in parse_fx10_object().

---

 dlls/d3d10/d3d10_private.h |    1 +
 dlls/d3d10/effect.c        |    9 +++++++++
 2 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/dlls/d3d10/d3d10_private.h b/dlls/d3d10/d3d10_private.h
index a782419..4d80241 100644
--- a/dlls/d3d10/d3d10_private.h
+++ b/dlls/d3d10/d3d10_private.h
@@ -48,6 +48,7 @@ enum d3d10_effect_object_type
 enum d3d10_effect_object_operation
 {
     D3D10_EOO_VALUE = 1,
+    D3D10_EOO_PARSED_OBJECT = 2,
     D3D10_EOO_ANONYMOUS_SHADER = 7,
 };
 
diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c
index 8a16dbc..e5240e6 100644
--- a/dlls/d3d10/effect.c
+++ b/dlls/d3d10/effect.c
@@ -910,6 +910,7 @@ static HRESULT parse_fx10_object(struct d3d10_effect_object *o, const char **ptr
     enum d3d10_effect_object_operation operation;
     HRESULT hr;
     struct d3d10_effect *effect = o->pass->technique->effect;
+    ID3D10Effect *e = (ID3D10Effect *)effect;
 
     read_dword(ptr, &o->type);
     TRACE("Effect object is of type %#x.\n", o->type);
@@ -956,6 +957,14 @@ static HRESULT parse_fx10_object(struct d3d10_effect_object *o, const char **ptr
             }
             break;
 
+        case D3D10_EOO_PARSED_OBJECT:
+            /* This is a local object, we've parsed in parse_fx10_local_object. */
+            TRACE("Shader = %s.\n", data + offset);
+
+            o->data = e->lpVtbl->GetVariableByName(e, data + offset);
+            hr = S_OK;
+            break;
+
         case D3D10_EOO_ANONYMOUS_SHADER:
             TRACE("Anonymous shader\n");
 




More information about the wine-cvs mailing list