cryptui: Honour hDestCertStore in CryptUIWizImport, be more verbose about its shortcomings.
Hans Leidekker
hans at codeweavers.com
Wed Oct 22 03:42:34 CDT 2008
To address some of Juan's concerns.
-Hans
diff --git a/dlls/cryptui/main.c b/dlls/cryptui/main.c
index 0aab87e..482bd14 100644
--- a/dlls/cryptui/main.c
+++ b/dlls/cryptui/main.c
@@ -156,17 +156,21 @@ BOOL WINAPI CryptUIWizImport(DWORD dwFlags, HWND hwndParent, LPCWSTR pwszWizardT
HeapFree(GetProcessHeap(), 0, buffer);
return FALSE;
}
- /* FIXME: verify certificate and determine store name dynamically */
- if (!(store = CertOpenStore(CERT_STORE_PROV_SYSTEM_W, 0, 0, CERT_SYSTEM_STORE_CURRENT_USER, Root)))
+ if (hDestCertStore) store = hDestCertStore;
+ else
{
- WARN("unable to open certificate store\n");
- CertFreeCertificateContext(cert);
- HeapFree(GetProcessHeap(), 0, buffer);
- return FALSE;
+ FIXME("certificate store should be determined dynamically, picking Root store\n");
+ if (!(store = CertOpenStore(CERT_STORE_PROV_SYSTEM_W, 0, 0, CERT_SYSTEM_STORE_CURRENT_USER, Root)))
+ {
+ WARN("unable to open certificate store\n");
+ CertFreeCertificateContext(cert);
+ HeapFree(GetProcessHeap(), 0, buffer);
+ return FALSE;
+ }
}
ret = CertAddCertificateContextToStore(store, cert, CERT_STORE_ADD_REPLACE_EXISTING, NULL);
- CertCloseStore(store, 0);
+ if (!hDestCertStore) CertCloseStore(store, 0);
CertFreeCertificateContext(cert);
HeapFree(GetProcessHeap(), 0, buffer);
return ret;
More information about the wine-patches
mailing list