Alistair Leslie-Hughes : ole32: Stop crash under w2k8.

Alexandre Julliard julliard at winehq.org
Wed Aug 20 08:14:04 CDT 2008


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

Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date:   Wed Aug  6 14:51:03 2008 +1000

ole32: Stop crash under w2k8.

---

 dlls/ole32/tests/marshal.c |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/dlls/ole32/tests/marshal.c b/dlls/ole32/tests/marshal.c
index fba8b14..0443b63 100644
--- a/dlls/ole32/tests/marshal.c
+++ b/dlls/ole32/tests/marshal.c
@@ -2337,20 +2337,23 @@ static void test_handler_marshaling(void)
     ok_ole_success(hr, "CoUnmarshalInterface");
     IStream_Release(pStream);
 
-    ok_more_than_one_lock();
+    if(hr == S_OK)
+    {
+        ok_more_than_one_lock();
 
-    hr = IUnknown_QueryInterface(pProxy, &IID_IWineTest, (void **)&pObject);
-    ok(hr == E_NOINTERFACE, "IUnknown_QueryInterface with unknown IID should have returned E_NOINTERFACE instead of 0x%08x\n", hr);
+        hr = IUnknown_QueryInterface(pProxy, &IID_IWineTest, (void **)&pObject);
+        ok(hr == E_NOINTERFACE, "IUnknown_QueryInterface with unknown IID should have returned E_NOINTERFACE instead of 0x%08x\n", hr);
 
-    /* it's a handler as it supports IOleObject */
-    hr = IUnknown_QueryInterface(pProxy, &IID_IOleObject, (void **)&pObject);
-    todo_wine
-    ok_ole_success(hr, "IUnknown_QueryInterface(&IID_IOleObject)");
-    if (SUCCEEDED(hr)) IUnknown_Release(pObject);
+        /* it's a handler as it supports IOleObject */
+        hr = IUnknown_QueryInterface(pProxy, &IID_IOleObject, (void **)&pObject);
+        todo_wine
+        ok_ole_success(hr, "IUnknown_QueryInterface(&IID_IOleObject)");
+        if (SUCCEEDED(hr)) IUnknown_Release(pObject);
 
-    IUnknown_Release(pProxy);
+        IUnknown_Release(pProxy);
 
-    ok_no_locks();
+        ok_no_locks();
+    }
 
     end_host_object(tid, thread);
 




More information about the wine-cvs mailing list