Module: wine Branch: master Commit: 06fd9bb3178c363bdcc89586248a2ce707f94041 URL: https://source.winehq.org/git/wine.git/?a=commit;h=06fd9bb3178c363bdcc895862...
Author: Dmitry Timoshkov dmitry@baikal.ru Date: Wed Sep 19 16:37:16 2018 +0800
msi/tests: Add a test for repetitive MsiGetActiveDatabase calls.
Signed-off-by: Dmitry Timoshkov dmitry@baikal.ru Signed-off-by: Hans Leidekker hans@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/msi/tests/custom.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/dlls/msi/tests/custom.c b/dlls/msi/tests/custom.c index c9ec82f..cd6cb0c 100644 --- a/dlls/msi/tests/custom.c +++ b/dlls/msi/tests/custom.c @@ -281,7 +281,7 @@ static void test_db(MSIHANDLE hinst) VT_EMPTY, VT_EMPTY, VT_LPSTR, VT_EMPTY, VT_LPSTR, VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_I4, VT_I4, VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY }; - MSIHANDLE hdb, view, rec, rec2, suminfo; + MSIHANDLE hdb, hdb2, view, rec, rec2, suminfo; char buffer[10]; DWORD sz; UINT r, count, type, i; @@ -312,6 +312,17 @@ static void test_db(MSIHANDLE hinst) ok(hinst, sz == strlen(buffer), "got size %u\n", sz); ok(hinst, !strcmp(buffer, "Name"), "got '%s'\n", buffer);
+ /* Test MsiGetActiveDatabase + MsiDatabaseIsTablePersistent once again */ + hdb2 = MsiGetActiveDatabase(hinst); + ok(hinst, hdb2, "MsiGetActiveDatabase failed\n"); + ok(hinst, hdb2 != hdb, "db handles should be different\n"); + + r = MsiDatabaseIsTablePersistentA(hdb2, "Test"); + ok(hinst, r == MSICONDITION_TRUE, "got %u\n", r); + + r = MsiCloseHandle(hdb2); + ok(hinst, !r, "got %u\n", r); + r = MsiCloseHandle(rec2); ok(hinst, !r, "got %u\n", r);