Huw Davies : wbemdisp: Invoke the generic methods and properties as well as the dynamic ones.
Module: wine Branch: master Commit: a11aed32ca5b326baddd179a2768abd7ce03e9af URL: http://source.winehq.org/git/wine.git/?a=commit;h=a11aed32ca5b326baddd179a27... Author: Huw Davies <huw(a)codeweavers.com> Date: Mon Apr 3 09:57:30 2017 +0100 wbemdisp: Invoke the generic methods and properties as well as the dynamic ones. Signed-off-by: Huw Davies <huw(a)codeweavers.com> Signed-off-by: Hans Leidekker <hans(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/wbemdisp/locator.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/dlls/wbemdisp/locator.c b/dlls/wbemdisp/locator.c index 74691bc..e6ef02b 100644 --- a/dlls/wbemdisp/locator.c +++ b/dlls/wbemdisp/locator.c @@ -300,10 +300,24 @@ static HRESULT WINAPI object_Invoke( { struct object *object = impl_from_ISWbemObject( iface ); BSTR name; + ITypeInfo *typeinfo; + HRESULT hr; TRACE( "%p, %x, %s, %u, %x, %p, %p, %p, %p\n", object, member, debugstr_guid(riid), lcid, flags, params, result, excep_info, arg_err ); + if (member <= DISPID_BASE) + { + hr = get_typeinfo( ISWbemObject_tid, &typeinfo ); + if (SUCCEEDED(hr)) + { + hr = ITypeInfo_Invoke( typeinfo, &object->ISWbemObject_iface, member, flags, + params, result, excep_info, arg_err ); + ITypeInfo_Release( typeinfo ); + } + return hr; + } + if (flags != (DISPATCH_METHOD|DISPATCH_PROPERTYGET)) { FIXME( "flags %x not supported\n", flags );
participants (1)
-
Alexandre Julliard