Jacek Caban : mshtml: Silence common invalid QueryInterface FIXME.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Oct 2 15:01:26 CDT 2006


Module: wine
Branch: master
Commit: 463d010531fa784653a4877127533a94f0d19f5f
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=463d010531fa784653a4877127533a94f0d19f5f

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Oct  2 21:07:46 2006 +0200

mshtml: Silence common invalid QueryInterface FIXME.

---

 dlls/mshtml/htmldoc.c       |    3 +++
 dlls/mshtml/tests/htmldoc.c |   11 +++++++++++
 2 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/dlls/mshtml/htmldoc.c b/dlls/mshtml/htmldoc.c
index 18bd05f..c8d68c4 100644
--- a/dlls/mshtml/htmldoc.c
+++ b/dlls/mshtml/htmldoc.c
@@ -116,6 +116,9 @@ static HRESULT WINAPI HTMLDocument_Query
     }else if(IsEqualGUID(&CLSID_CMarkup, riid)) {
         FIXME("(%p)->(CLSID_CMarkup %p)\n", This, ppvObject);
         return E_NOINTERFACE;
+    }else if(IsEqualGUID(&IID_IRunnableObject, riid)) {
+        TRACE("(%p)->(IID_IRunnableObject %p) returning NULL\n", This, ppvObject);
+        return E_NOINTERFACE;
     }
 
     if(*ppvObject) {
diff --git a/dlls/mshtml/tests/htmldoc.c b/dlls/mshtml/tests/htmldoc.c
index c6fb288..19151a0 100644
--- a/dlls/mshtml/tests/htmldoc.c
+++ b/dlls/mshtml/tests/htmldoc.c
@@ -2535,6 +2535,16 @@ static void test_Navigate(IUnknown *unk)
     IHlinkTarget_Release(hlink);
 }
 
+static void test_QueryInterface(IUnknown *unk)
+{
+    IRunnableObject *runnable = (IRunnableObject*)0xdeadbeef;
+    HRESULT hres;
+
+    hres = IUnknown_QueryInterface(unk, &IID_IRunnableObject, (void**)&runnable);
+    ok(hres == E_NOINTERFACE, "QueryInterface returned %08lx, expected E_NOINTERFACE\n", hres);
+    ok(runnable == NULL, "runnable=%p, ezpected NULL\n", runnable);
+}
+
 static void init_test(enum load_state_t ls) {
     hwnd = last_hwnd = NULL;
     set_clientsite = FALSE;
@@ -2556,6 +2566,7 @@ static void test_HTMLDocument(enum load_
     if(FAILED(hres))
         return;
 
+    test_QueryInterface(unk);
     test_ConnectionPointContainer(unk);
     test_Persist(unk);
     if(load_state == LD_NO)




More information about the wine-cvs mailing list