Module: wine Branch: master Commit: 89069761ba647f02bf451bce31c345ec7534cd6c URL: http://source.winehq.org/git/wine.git/?a=commit;h=89069761ba647f02bf451bce31...
Author: Jacek Caban jacek@codeweavers.com Date: Fri Feb 22 11:35:24 2008 +0100
shdocvw: Silence more invalid QueryInterface FIXMEs.
---
dlls/shdocvw/tests/webbrowser.c | 14 ++++++++++++-- dlls/shdocvw/webbrowser.c | 6 ++++++ 2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/dlls/shdocvw/tests/webbrowser.c b/dlls/shdocvw/tests/webbrowser.c index 2dedbf3..1ec3de3 100644 --- a/dlls/shdocvw/tests/webbrowser.c +++ b/dlls/shdocvw/tests/webbrowser.c @@ -1929,7 +1929,9 @@ static void test_QueryInterface(IUnknown *unk) IQuickActivate *qa = (IQuickActivate*)0xdeadbeef; IRunnableObject *runnable = (IRunnableObject*)0xdeadbeef; IPerPropertyBrowsing *propbrowse = (void*)0xdeadbeef; + IOleInPlaceSite *inplace = (void*)0xdeadbeef; IOleCache *cache = (void*)0xdeadbeef; + IObjectWithSite *site = (void*)0xdeadbeef; HRESULT hres;
hres = IUnknown_QueryInterface(unk, &IID_IQuickActivate, (void**)&qa); @@ -1942,11 +1944,19 @@ static void test_QueryInterface(IUnknown *unk)
hres = IUnknown_QueryInterface(unk, &IID_IPerPropertyBrowsing, (void**)&propbrowse); ok(hres == E_NOINTERFACE, "QueryInterface returned %08x, expected E_NOINTERFACE\n", hres); - ok(runnable == NULL, "runnable=%p, ezpected NULL\n", runnable); + ok(propbrowse == NULL, "propbrowse=%p, ezpected NULL\n", runnable);
hres = IUnknown_QueryInterface(unk, &IID_IOleCache, (void**)&cache); ok(hres == E_NOINTERFACE, "QueryInterface returned %08x, expected E_NOINTERFACE\n", hres); - ok(cache == NULL, "runnable=%p, ezpected NULL\n", runnable); + ok(cache == NULL, "cache=%p, ezpected NULL\n", runnable); + + hres = IUnknown_QueryInterface(unk, &IID_IOleInPlaceSite, (void**)&inplace); + ok(hres == E_NOINTERFACE, "QueryInterface returned %08x, expected E_NOINTERFACE\n", hres); + ok(inplace == NULL, "inplace=%p, ezpected NULL\n", runnable); + + hres = IUnknown_QueryInterface(unk, &IID_IObjectWithSite, (void**)&site); + ok(hres == E_NOINTERFACE, "QueryInterface returned %08x, expected E_NOINTERFACE\n", hres); + ok(site == NULL, "inplace=%p, ezpected NULL\n", runnable); }
static void test_WebBrowser(void) diff --git a/dlls/shdocvw/webbrowser.c b/dlls/shdocvw/webbrowser.c index 41617a2..2c4d36d 100644 --- a/dlls/shdocvw/webbrowser.c +++ b/dlls/shdocvw/webbrowser.c @@ -114,6 +114,12 @@ static HRESULT WINAPI WebBrowser_QueryInterface(IWebBrowser2 *iface, REFIID riid }else if(IsEqualGUID(&IID_IOleCache, riid)) { TRACE("(%p)->(IID_IOleCache %p) returning NULL\n", This, ppv); return E_NOINTERFACE; + }else if(IsEqualGUID(&IID_IOleInPlaceSite, riid)) { + TRACE("(%p)->(IID_IOleInPlaceSite %p) returning NULL\n", This, ppv); + return E_NOINTERFACE; + }else if(IsEqualGUID(&IID_IObjectWithSite, riid)) { + TRACE("(%p)->(IID_IObjectWithSite %p) returning NULL\n", This, ppv); + return E_NOINTERFACE; }
if(*ppv) {