Module: wine Branch: master Commit: 8cbc6f951f6eee6c81545908fdc97360dc47b933 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8cbc6f951f6eee6c81545908fd...
Author: Hans Leidekker hans@codeweavers.com Date: Wed Oct 22 10:42:34 2008 +0200
cryptui: Honour hDestCertStore in CryptUIWizImport, be more verbose about its shortcomings.
---
dlls/cryptui/main.c | 18 +++++++++++------- 1 files changed, 11 insertions(+), 7 deletions(-)
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;