oleaut32: Skip tests if interface is not accessable

André Hentschel nerv at dawncrow.de
Tue Aug 2 12:36:08 CDT 2011


The hole test_ function depends on succeeding here (more than i thought first)
---
 dlls/oleaut32/tests/tmarshal.c |   14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/dlls/oleaut32/tests/tmarshal.c b/dlls/oleaut32/tests/tmarshal.c
index 2897c1f..b04e8cf 100644
--- a/dlls/oleaut32/tests/tmarshal.c
+++ b/dlls/oleaut32/tests/tmarshal.c
@@ -992,17 +992,19 @@ static void test_typelibmarshal(void)
 
     IStream_Seek(pStream, ullZero, STREAM_SEEK_SET, NULL);
     hr = CoUnmarshalInterface(pStream, &IID_IKindaEnumWidget, (void **)&pKEW);
-    ok_ole_success(hr, CoUnmarshalInterface);
     IStream_Release(pStream);
 
-    if (hr == S_OK)
+    if (FAILED(hr))
     {
-        hr = IKindaEnumWidget_Next(pKEW, &pWidget);
-        ok_ole_success(hr, IKindaEnumWidget_Next);
-
-        IKindaEnumWidget_Release(pKEW);
+        win_skip("CoUnmarshalInterface failed, skipping Typelib marshaling tests");
+        return;
     }
 
+    hr = IKindaEnumWidget_Next(pKEW, &pWidget);
+    ok_ole_success(hr, IKindaEnumWidget_Next);
+
+    IKindaEnumWidget_Release(pKEW);
+
     hr = IWidget_QueryInterface(pWidget, &IID_IDispatch, (void **)&pDispatch);
     ok_ole_success(hr, IWidget_QueryInterface);
 
-- 

Best Regards, André Hentschel



More information about the wine-patches mailing list