Rico Schüller : d3dx9: Improve ID3DXBaseEffect:: GetParameter().

Alexandre Julliard julliard at winehq.org
Tue Apr 26 11:35:45 CDT 2011


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

Author: Rico Schüller <kgbricola at web.de>
Date:   Tue Apr 26 09:20:51 2011 +0200

d3dx9: Improve ID3DXBaseEffect::GetParameter().

---

 dlls/d3dx9_36/effect.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c
index d44616c..0f65df7 100644
--- a/dlls/d3dx9_36/effect.c
+++ b/dlls/d3dx9_36/effect.c
@@ -739,9 +739,12 @@ static HRESULT WINAPI ID3DXBaseEffectImpl_GetFunctionDesc(ID3DXBaseEffect *iface
 static D3DXHANDLE WINAPI ID3DXBaseEffectImpl_GetParameter(ID3DXBaseEffect *iface, D3DXHANDLE parameter, UINT index)
 {
     struct ID3DXBaseEffectImpl *This = impl_from_ID3DXBaseEffect(iface);
+    struct d3dx_parameter *param = is_valid_parameter(This, parameter);
 
     TRACE("iface %p, parameter %p, index %u\n", This, parameter, index);
 
+    if (!param) param = get_parameter_by_name(This, NULL, parameter, FALSE);
+
     if (!parameter)
     {
         if (index < This->parameter_count)
@@ -752,8 +755,6 @@ static D3DXHANDLE WINAPI ID3DXBaseEffectImpl_GetParameter(ID3DXBaseEffect *iface
     }
     else
     {
-        struct d3dx_parameter *param = is_valid_parameter(This, parameter);
-
         if (param && !param->element_count && index < param->member_count)
         {
             TRACE("Returning parameter %p\n", param->member_handles[index]);




More information about the wine-cvs mailing list