Juan Lang : crypt32: Store world store in chain.
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Sep 10 10:17:59 CDT 2007
Module: wine
Branch: master
Commit: a82b36ac9811dcec46f0db1967d4fec357522ff2
URL: http://source.winehq.org/git/wine.git/?a=commit;h=a82b36ac9811dcec46f0db1967d4fec357522ff2
Author: Juan Lang <juan.lang at gmail.com>
Date: Thu Sep 6 09:59:19 2007 -0700
crypt32: Store world store in chain.
---
dlls/crypt32/chain.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/dlls/crypt32/chain.c b/dlls/crypt32/chain.c
index c6b197a..ffaef45 100644
--- a/dlls/crypt32/chain.c
+++ b/dlls/crypt32/chain.c
@@ -203,6 +203,7 @@ void default_chain_engine_free(void)
typedef struct _CertificateChain
{
CERT_CHAIN_CONTEXT context;
+ HCERTSTORE world;
LONG ref;
} CertificateChain, *PCertificateChain;
@@ -585,6 +586,7 @@ static BOOL CRYPT_BuildCandidateChainFromCert(HCERTCHAINENGINE hChainEngine,
if (chain)
{
chain->ref = 1;
+ chain->world = world;
chain->context.cbSize = sizeof(CERT_CHAIN_CONTEXT);
memcpy(&chain->context.TrustStatus, &simpleChain->TrustStatus,
sizeof(CERT_TRUST_STATUS));
@@ -600,7 +602,6 @@ static BOOL CRYPT_BuildCandidateChainFromCert(HCERTCHAINENGINE hChainEngine,
ret = FALSE;
*ppChain = chain;
}
- CertCloseStore(world, 0);
return ret;
}
@@ -663,6 +664,7 @@ static void CRYPT_FreeChainContext(PCertificateChain chain)
for (i = 0; i < chain->context.cChain; i++)
CRYPT_FreeSimpleChain(chain->context.rgpChain[i]);
CryptMemFree(chain->context.rgpChain);
+ CertCloseStore(chain->world, 0);
CryptMemFree(chain);
}
More information about the wine-cvs
mailing list