From 2bc66dc073f920add93fa75b6c0c85226604e91b Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Mon, 29 Aug 2016 15:38:56 +0300 Subject: [PATCH] oleaut32: Added proxy/stub for BindType. Signed-off-by: Nikolay Sivov Signed-off-by: Alexandre Julliard --- dlls/oleaut32/usrmarshal.c | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/dlls/oleaut32/usrmarshal.c b/dlls/oleaut32/usrmarshal.c index 61c8cc25c35..da524c85ebb 100644 --- a/dlls/oleaut32/usrmarshal.c +++ b/dlls/oleaut32/usrmarshal.c @@ -1515,23 +1515,41 @@ HRESULT __RPC_STUB ITypeComp_Bind_Stub( HRESULT CALLBACK ITypeComp_BindType_Proxy( ITypeComp* This, - LPOLESTR szName, + LPOLESTR name, ULONG lHashVal, - ITypeInfo** ppTInfo, - ITypeComp** ppTComp) + ITypeInfo **ti, + ITypeComp **typecomp) { - FIXME("not implemented\n"); - return E_FAIL; + HRESULT hr; + + TRACE("(%p, %s, %#x, %p, %p)\n", This, debugstr_w(name), lHashVal, ti, typecomp); + + hr = ITypeComp_RemoteBindType_Proxy(This, name, lHashVal, ti); + if (hr == S_OK) + ITypeInfo_GetTypeComp(*ti, typecomp); + else if (typecomp) + *typecomp = NULL; + + return hr; } HRESULT __RPC_STUB ITypeComp_BindType_Stub( ITypeComp* This, - LPOLESTR szName, + LPOLESTR name, ULONG lHashVal, - ITypeInfo** ppTInfo) + ITypeInfo **ti) { - FIXME("not implemented\n"); - return E_FAIL; + ITypeComp *typecomp = NULL; + HRESULT hr; + + TRACE("(%p, %s, %#x, %p)\n", This, debugstr_w(name), lHashVal, ti); + + hr = ITypeComp_BindType(This, name, lHashVal, ti, &typecomp); + + if (typecomp) + ITypeComp_Release(typecomp); + + return hr; } /* ITypeInfo */