Commit e16f1877 authored by Hans Leidekker's avatar Hans Leidekker Committed by Alexandre Julliard

msi: Test the reference count on the installer object retrieved from a session object.

parent 2e24d34b
...@@ -1815,6 +1815,7 @@ static void test_Session(IDispatch *pSession) ...@@ -1815,6 +1815,7 @@ static void test_Session(IDispatch *pSession)
BOOL bool; BOOL bool;
int myint; int myint;
IDispatch *pDatabase = NULL, *pInst = NULL, *record = NULL; IDispatch *pDatabase = NULL, *pInst = NULL, *record = NULL;
ULONG refs_before, refs_after;
HRESULT hr; HRESULT hr;
/* Session::Installer */ /* Session::Installer */
...@@ -1822,6 +1823,14 @@ static void test_Session(IDispatch *pSession) ...@@ -1822,6 +1823,14 @@ static void test_Session(IDispatch *pSession)
ok(hr == S_OK, "Session_Installer failed, hresult 0x%08x\n", hr); ok(hr == S_OK, "Session_Installer failed, hresult 0x%08x\n", hr);
ok(pInst != NULL, "Session_Installer returned NULL IDispatch pointer\n"); ok(pInst != NULL, "Session_Installer returned NULL IDispatch pointer\n");
ok(pInst == pInstaller, "Session_Installer does not match Installer instance from CoCreateInstance\n"); ok(pInst == pInstaller, "Session_Installer does not match Installer instance from CoCreateInstance\n");
refs_before = IDispatch_AddRef(pInst);
hr = Session_Installer(pSession, &pInst);
ok(hr == S_OK, "Session_Installer failed, hresult 0x%08x\n", hr);
ok(pInst != NULL, "Session_Installer returned NULL IDispatch pointer\n");
ok(pInst == pInstaller, "Session_Installer does not match Installer instance from CoCreateInstance\n");
refs_after = IDispatch_Release(pInst);
ok(refs_before == refs_after, "got %u and %u\n", refs_before, refs_after);
/* Session::Property, get */ /* Session::Property, get */
memset(stringw, 0, sizeof(stringw)); memset(stringw, 0, sizeof(stringw));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment