Module: wine Branch: master Commit: 17a30ff2e8ab5fbd29e8fe86a3cf98d2221c8658 URL: http://source.winehq.org/git/wine.git/?a=commit;h=17a30ff2e8ab5fbd29e8fe86a3...
Author: Rob Shearman robertshearman@gmail.com Date: Sat Jan 10 20:56:52 2009 +0000
oleaut32: Test the return value of the remote IWidget_StructArgs call.
---
dlls/oleaut32/tests/tmarshal.c | 15 +++++++++++---- dlls/oleaut32/tests/tmarshal.idl | 6 +++--- 2 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/dlls/oleaut32/tests/tmarshal.c b/dlls/oleaut32/tests/tmarshal.c index 6193d80..713c366 100644 --- a/dlls/oleaut32/tests/tmarshal.c +++ b/dlls/oleaut32/tests/tmarshal.c @@ -546,7 +546,7 @@ static HRESULT WINAPI Widget_VariantArrayPtr( return S_OK; }
-static void WINAPI Widget_Variant( +static HRESULT WINAPI Widget_Variant( IWidget __RPC_FAR * iface, VARIANT var) { @@ -554,9 +554,10 @@ static void WINAPI Widget_Variant( ok(V_VT(&var) == VT_CY, "V_VT(&var) was %d\n", V_VT(&var)); ok(S(V_CY(&var)).Hi == 0xdababe, "V_CY(&var).Hi was 0x%x\n", S(V_CY(&var)).Hi); ok(S(V_CY(&var)).Lo == 0xdeadbeef, "V_CY(&var).Lo was 0x%x\n", S(V_CY(&var)).Lo); + return S_OK; }
-static void WINAPI Widget_VarArg( +static HRESULT WINAPI Widget_VarArg( IWidget * iface, int numexpect, SAFEARRAY * values) @@ -586,9 +587,11 @@ static void WINAPI Widget_VarArg(
hr = SafeArrayUnaccessData(values); ok(hr == S_OK, "SafeArrayUnaccessData failed with %x\n", hr); + + return S_OK; }
-static void WINAPI Widget_StructArgs( +static HRESULT WINAPI Widget_StructArgs( IWidget * iface, MYSTRUCT byval, MYSTRUCT *byptr, @@ -597,6 +600,7 @@ static void WINAPI Widget_StructArgs( ok(memcmp(&byval, &MYSTRUCT_BYVAL, sizeof(MYSTRUCT))==0, "Struct parameter passed by value corrupted\n"); ok(memcmp(byptr, &MYSTRUCT_BYPTR, sizeof(MYSTRUCT))==0, "Struct parameter passed by pointer corrupted\n"); ok(memcmp(arr, MYSTRUCT_ARRAY, sizeof(MYSTRUCT_ARRAY))==0, "Array of structs corrupted\n"); + return S_OK; }
@@ -1102,7 +1106,10 @@ static void test_typelibmarshal(void) /* call StructArgs (direct) */ mystruct = MYSTRUCT_BYPTR; memcpy(mystructArray, MYSTRUCT_ARRAY, sizeof(mystructArray)); - IWidget_StructArgs(pWidget, MYSTRUCT_BYVAL, &mystruct, mystructArray); + hr = IWidget_StructArgs(pWidget, MYSTRUCT_BYVAL, &mystruct, mystructArray); + todo_wine { + ok_ole_success(hr, IWidget_StructArgs); + }
/* call Clone */ dispparams.cNamedArgs = 0; diff --git a/dlls/oleaut32/tests/tmarshal.idl b/dlls/oleaut32/tests/tmarshal.idl index ea10797..2b57ddd 100644 --- a/dlls/oleaut32/tests/tmarshal.idl +++ b/dlls/oleaut32/tests/tmarshal.idl @@ -112,13 +112,13 @@ library TestTypelib HRESULT VariantArrayPtr([in] SAFEARRAY(VARIANT) *values);
[id(DISPID_TM_VARIANT)] - void Variant([in] VARIANT var); + HRESULT Variant([in] VARIANT var);
[vararg, id(DISPID_TM_VARARG)] - void VarArg([in] int numexpect, [in] SAFEARRAY(VARIANT) values); + HRESULT VarArg([in] int numexpect, [in] SAFEARRAY(VARIANT) values);
[id(DISPID_TM_STRUCTARGS)] - void StructArgs([in] MYSTRUCT byval, [in] MYSTRUCT *byptr, [in] MYSTRUCT arr[5]); + HRESULT StructArgs([in] MYSTRUCT byval, [in] MYSTRUCT *byptr, [in] MYSTRUCT arr[5]);
[id(DISPID_TM_ERROR)] HRESULT Error();