diff --git a/dlls/mshtml/dispex.c b/dlls/mshtml/dispex.c index a97f09dab1f..ff4e28a4046 100644 --- a/dlls/mshtml/dispex.c +++ b/dlls/mshtml/dispex.c @@ -649,8 +649,9 @@ static HRESULT WINAPI Function_QueryInterface(IUnknown *iface, REFIID riid, void { func_disp_t *This = impl_from_IUnknown(iface); + TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv); + if(IsEqualGUID(&IID_IUnknown, riid)) { - TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv); *ppv = &This->IUnknown_iface; }else if(dispex_query_interface(&This->dispex, riid, ppv)) { return *ppv ? S_OK : E_NOINTERFACE; @@ -1669,26 +1670,16 @@ static IDispatchExVtbl DispatchExVtbl = { BOOL dispex_query_interface(DispatchEx *This, REFIID riid, void **ppv) { - static const IID IID_UndocumentedScriptIface = - {0x719c3050,0xf9d3,0x11cf,{0xa4,0x93,0x00,0x40,0x05,0x23,0xa8,0xa0}}; - static const IID IID_IDispatchJS = - {0x719c3050,0xf9d3,0x11cf,{0xa4,0x93,0x00,0x40,0x05,0x23,0xa8,0xa6}}; - - if(IsEqualGUID(&IID_IDispatch, riid)) { - TRACE("(%p)->(IID_IDispatch %p)\n", This, ppv); + if(IsEqualGUID(&IID_IDispatch, riid)) *ppv = &This->IDispatchEx_iface; - }else if(IsEqualGUID(&IID_IDispatchEx, riid)) { - TRACE("(%p)->(IID_IDispatchEx %p)\n", This, ppv); + else if(IsEqualGUID(&IID_IDispatchEx, riid)) *ppv = &This->IDispatchEx_iface; - }else if(IsEqualGUID(&IID_IDispatchJS, riid)) { - TRACE("(%p)->(IID_IDispatchJS %p) returning NULL\n", This, ppv); + else if(IsEqualGUID(&IID_IDispatchJS, riid)) *ppv = NULL; - }else if(IsEqualGUID(&IID_UndocumentedScriptIface, riid)) { - TRACE("(%p)->(IID_UndocumentedScriptIface %p) returning NULL\n", This, ppv); + else if(IsEqualGUID(&IID_UndocumentedScriptIface, riid)) *ppv = NULL; - }else { + else return FALSE; - } if(*ppv) IUnknown_AddRef((IUnknown*)*ppv); diff --git a/dlls/mshtml/htmlelem.c b/dlls/mshtml/htmlelem.c index da7c0f73930..812076149fa 100644 --- a/dlls/mshtml/htmlelem.c +++ b/dlls/mshtml/htmlelem.c @@ -4276,6 +4276,8 @@ static HRESULT WINAPI HTMLAttributeCollection_QueryInterface(IHTMLAttributeColle { HTMLAttributeCollection *This = impl_from_IHTMLAttributeCollection(iface); + TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv); + if(IsEqualGUID(&IID_IUnknown, riid)) { *ppv = &This->IHTMLAttributeCollection_iface; }else if(IsEqualGUID(&IID_IHTMLAttributeCollection, riid)) { diff --git a/dlls/mshtml/htmlelemcol.c b/dlls/mshtml/htmlelemcol.c index 1542926c330..ca5e1d56f7a 100644 --- a/dlls/mshtml/htmlelemcol.c +++ b/dlls/mshtml/htmlelemcol.c @@ -218,6 +218,8 @@ static HRESULT WINAPI HTMLElementCollection_QueryInterface(IHTMLElementCollectio { HTMLElementCollection *This = impl_from_IHTMLElementCollection(iface); + TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv); + if(IsEqualGUID(&IID_IUnknown, riid)) { *ppv = &This->IHTMLElementCollection_iface; }else if(IsEqualGUID(&IID_IHTMLElementCollection, riid)) { diff --git a/dlls/mshtml/main.c b/dlls/mshtml/main.c index e5cf3254165..8d9f1ac2c0c 100644 --- a/dlls/mshtml/main.c +++ b/dlls/mshtml/main.c @@ -545,6 +545,8 @@ const char *debugstr_mshtml_guid(const GUID *iid) X(IID_ICustomDoc); X(IID_IDispatch); X(IID_IDispatchEx); + X(IID_IDispatchJS); + X(IID_UndocumentedScriptIface); X(IID_IEnumConnections); X(IID_IEnumVARIANT); X(IID_IHlinkTarget); diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 1f391a43e0f..a53fcec0695 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -1061,6 +1061,9 @@ DEFINE_OLEGUID(CGID_DocHostCmdPriv, 0x000214D4L, 0, 0); DEFINE_GUID(CLSID_JScript, 0xf414c260,0x6ac0,0x11cf, 0xb6,0xd1,0x00,0xaa,0x00,0xbb,0xbb,0x58); DEFINE_GUID(CLSID_VBScript, 0xb54f3741,0x5b07,0x11cf, 0xa4,0xb0,0x00,0xaa,0x00,0x4a,0x55,0xe8); +DEFINE_GUID(IID_UndocumentedScriptIface,0x719c3050,0xf9d3,0x11cf,0xa4,0x93,0x00,0x40,0x05,0x23,0xa8,0xa0); +DEFINE_GUID(IID_IDispatchJS,0x719c3050,0xf9d3,0x11cf,0xa4,0x93,0x00,0x40,0x05,0x23,0xa8,0xa6); + /* memory allocation functions */ static inline void * __WINE_ALLOC_SIZE(1) heap_alloc(size_t len)