crypt32/tests: Delete WineTest registry key when tests are complete
Hugh McMaster
hugh.mcmaster at outlook.com
Mon Oct 5 01:15:20 CDT 2015
Signed-off-by: Hugh McMaster <hugh.mcmaster at outlook.com>
---
dlls/crypt32/tests/store.c | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/dlls/crypt32/tests/store.c b/dlls/crypt32/tests/store.c
index a416a39..a0c209a 100644
--- a/dlls/crypt32/tests/store.c
+++ b/dlls/crypt32/tests/store.c
@@ -2203,6 +2203,35 @@ static const BYTE serializedStoreWithCertAndHash[] = {
0xff,0x04,0x08,0x30,0x06,0x01,0x01,0xff,0x02,0x01,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 };
+static void delete_test_key(void)
+{
+ HKEY root_key, test_key;
+ static const WCHAR SysCertW[] = {'S','o','f','t','w','a','r','e','\\','M','i','c','r','o','s','o','f','t','\\',
+ 'S','y','s','t','e','m','C','e','r','t','i','f','i','c','a','t','e','s',0};
+ static const WCHAR WineTestW[] = {'W','i','n','e','T','e','s','t',0};
+ WCHAR subkey_name[32];
+ DWORD num_subkeys, subkey_name_len;
+ int idx;
+
+ if (RegOpenKeyExW(HKEY_CURRENT_USER, SysCertW, 0, KEY_READ, &root_key))
+ return;
+ if (RegOpenKeyExW(root_key, WineTestW, 0, KEY_READ, &test_key))
+ {
+ RegCloseKey(root_key);
+ return;
+ }
+ RegQueryInfoKeyW(test_key, NULL, NULL, NULL, &num_subkeys, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+ for (idx = num_subkeys; idx-- > 0;)
+ {
+ subkey_name_len = sizeof(subkey_name)/sizeof(WCHAR);
+ RegEnumKeyExW(test_key, idx, subkey_name, &subkey_name_len, NULL, NULL, NULL, NULL);
+ RegDeleteKeyW(test_key, subkey_name);
+ }
+ RegCloseKey(test_key);
+ RegDeleteKeyW(root_key, WineTestW);
+ RegCloseKey(root_key);
+}
+
static void testAddCertificateLink(void)
{
BOOL ret;
@@ -2499,6 +2528,8 @@ static void testAddCertificateLink(void)
CertFreeCertificateContext(source);
CertCloseStore(store1, 0);
+
+ delete_test_key();
}
static DWORD countCertsInStore(HCERTSTORE store)
--
1.9.1
More information about the wine-patches
mailing list