Juan Lang : wintrust: Return error directly from WINTRUST_SaveSigner.
Alexandre Julliard
julliard at winehq.org
Fri Jan 29 10:56:30 CST 2010
Module: wine
Branch: master
Commit: 47e75329e352eaffb727c37206e85261cdeca2a5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=47e75329e352eaffb727c37206e85261cdeca2a5
Author: Juan Lang <juan.lang at gmail.com>
Date: Wed Jan 27 14:07:58 2010 -0800
wintrust: Return error directly from WINTRUST_SaveSigner.
---
dlls/wintrust/softpub.c | 29 +++++++++++++----------------
1 files changed, 13 insertions(+), 16 deletions(-)
diff --git a/dlls/wintrust/softpub.c b/dlls/wintrust/softpub.c
index 4a702c1..3fc14c2 100644
--- a/dlls/wintrust/softpub.c
+++ b/dlls/wintrust/softpub.c
@@ -474,9 +474,9 @@ static CMSG_SIGNER_INFO *WINTRUST_GetSigner(CRYPT_PROVIDER_DATA *data,
return signerInfo;
}
-static BOOL WINTRUST_SaveSigner(CRYPT_PROVIDER_DATA *data, DWORD signerIdx)
+static DWORD WINTRUST_SaveSigner(CRYPT_PROVIDER_DATA *data, DWORD signerIdx)
{
- BOOL ret;
+ DWORD err;
CMSG_SIGNER_INFO *signerInfo = WINTRUST_GetSigner(data, signerIdx);
if (signerInfo)
@@ -485,11 +485,14 @@ static BOOL WINTRUST_SaveSigner(CRYPT_PROVIDER_DATA *data, DWORD signerIdx)
sgnr.psSigner = signerInfo;
sgnr.sftVerifyAsOf = data->sftSystemTime;
- ret = data->psPfns->pfnAddSgnr2Chain(data, FALSE, signerIdx, &sgnr);
+ if (!data->psPfns->pfnAddSgnr2Chain(data, FALSE, signerIdx, &sgnr))
+ err = GetLastError();
+ else
+ err = ERROR_SUCCESS;
}
else
- ret = FALSE;
- return ret;
+ err = GetLastError();
+ return err;
}
static CERT_INFO *WINTRUST_GetSignerCertInfo(CRYPT_PROVIDER_DATA *data,
@@ -574,21 +577,15 @@ HRESULT WINAPI SoftpubLoadSignature(CRYPT_PROVIDER_DATA *data)
if (ret)
{
DWORD i;
+ DWORD err = ERROR_SUCCESS;
- for (i = 0; ret && i < signerCount; i++)
+ for (i = 0; !err && i < signerCount; i++)
{
- if ((ret = WINTRUST_SaveSigner(data, i)))
- {
- DWORD err;
-
+ if (!(err = WINTRUST_SaveSigner(data, i)))
err = WINTRUST_VerifySigner(data, i);
- if (err)
- {
- SetLastError(err);
- ret = FALSE;
- }
- }
}
+ if (err)
+ ret = FALSE;
}
else
SetLastError(TRUST_E_NOSIGNATURE);
More information about the wine-cvs
mailing list