From fa7422bc4ee4f9724a7b2327b1e428c5fdb4833b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rico=20Sch=C3=BCller?= Date: Sat, 25 Aug 2012 16:28:27 +0200 Subject: [PATCH] d3dx9: Improve ID3DXConstantTable::GetConstantDesc(). --- dlls/d3dx9_36/shader.c | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c index db48dd8105b..ec5a924c4a7 100644 --- a/dlls/d3dx9_36/shader.c +++ b/dlls/d3dx9_36/shader.c @@ -923,27 +923,18 @@ static HRESULT WINAPI ID3DXConstantTableImpl_GetConstantDesc(ID3DXConstantTable D3DXCONSTANT_DESC *desc, UINT *count) { struct ID3DXConstantTableImpl *This = impl_from_ID3DXConstantTable(iface); - struct ctab_constant *constant_info; + struct ctab_constant *c = get_valid_constant(This, constant); TRACE("(%p)->(%p, %p, %p)\n", This, constant, desc, count); - if (!constant) - return D3DERR_INVALIDCALL; - - /* Applications can pass the name of the constant in place of the handle */ - if (!is_valid_constant(This, constant)) + if (!c) { - constant = ID3DXConstantTable_GetConstantByName(iface, NULL, constant); - if (!constant) - return D3DERR_INVALIDCALL; + WARN("Invalid argument specified\n"); + return D3DERR_INVALIDCALL; } - constant_info = constant_from_handle(constant); - - if (desc) - *desc = constant_info->desc; - if (count) - *count = 1; + if (desc) *desc = c->desc; + if (count) *count = 1; return D3D_OK; }