Nikolay Sivov : shlwapi/tests: Reset cookie after service revoked (Valgrind ).

Alexandre Julliard julliard at winehq.org
Mon Jan 31 11:26:12 CST 2011


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

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Sat Jan 29 11:54:51 2011 +0300

shlwapi/tests: Reset cookie after service revoked (Valgrind).

---

 dlls/shlwapi/ordinal.c       |    3 +++
 dlls/shlwapi/tests/ordinal.c |    5 +++++
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/dlls/shlwapi/ordinal.c b/dlls/shlwapi/ordinal.c
index 3c00b8e..fbfed99 100644
--- a/dlls/shlwapi/ordinal.c
+++ b/dlls/shlwapi/ordinal.c
@@ -1571,7 +1571,10 @@ HRESULT WINAPI IUnknown_ProfferService(IUnknown *lpUnknown, REFGUID service, ISe
         if (pService)
             hr = IProfferService_ProfferService(proffer, service, pService, pCookie);
         else
+        {
             hr = IProfferService_RevokeService(proffer, *pCookie);
+            *pCookie = 0;
+        }
 
         IProfferService_Release(proffer);
     }
diff --git a/dlls/shlwapi/tests/ordinal.c b/dlls/shlwapi/tests/ordinal.c
index 0125ce4..fc788b7 100644
--- a/dlls/shlwapi/tests/ordinal.c
+++ b/dlls/shlwapi/tests/ordinal.c
@@ -2362,6 +2362,7 @@ static ULONG WINAPI IProfferServiceImpl_Release(IProfferService *iface)
 static HRESULT WINAPI IProfferServiceImpl_ProfferService(IProfferService *iface,
     REFGUID service, IServiceProvider *pService, DWORD *pCookie)
 {
+    *pCookie = 0xdeadbeef;
     add_call(&trace_got, 3, service, pService, pCookie, 0, 0);
     return S_OK;
 }
@@ -2419,8 +2420,10 @@ static void test_IUnknown_ProfferService(void)
     add_call(&trace_expected, 3, &dummy_serviceid, provider, &cookie, 0, 0);
 
     init_call_trace(&trace_got);
+    cookie = 0;
     hr = pIUnknown_ProfferService((IUnknown*)proff, &dummy_serviceid, provider, &cookie);
     ok(hr == S_OK, "got 0x%08x\n", hr);
+    ok(cookie == 0xdeadbeef, "got %x\n", cookie);
 
     ok_trace(&trace_expected, &trace_got);
     free_call_trace(&trace_got);
@@ -2434,8 +2437,10 @@ static void test_IUnknown_ProfferService(void)
     add_call(&trace_expected, 4, (void*)(DWORD_PTR)cookie, 0, 0, 0, 0);
 
     init_call_trace(&trace_got);
+    ok(cookie != 0, "got %x\n", cookie);
     hr = pIUnknown_ProfferService((IUnknown*)proff, &dummy_serviceid, 0, &cookie);
     ok(hr == S_OK, "got 0x%08x\n", hr);
+    ok(cookie == 0, "got %x\n", cookie);
     ok_trace(&trace_expected, &trace_got);
     free_call_trace(&trace_got);
     free_call_trace(&trace_expected);




More information about the wine-cvs mailing list