Module: wine Branch: master Commit: ef7cda722c17d5c3df9ac1f9166f17ec4ab89d32 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ef7cda722c17d5c3df9ac1f916...
Author: Juan Lang juan.lang@gmail.com Date: Tue Sep 8 21:56:11 2009 -0700
crypt32: Further simplify CertGetNameStringW.
---
dlls/crypt32/str.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/dlls/crypt32/str.c b/dlls/crypt32/str.c index ab8b947..6e13426 100644 --- a/dlls/crypt32/str.c +++ b/dlls/crypt32/str.c @@ -995,21 +995,23 @@ DWORD WINAPI CertGetNameStringW(PCCERT_CONTEXT pCertContext, DWORD dwType, szOID_ORGANIZATIONAL_UNIT_NAME, szOID_ORGANIZATION_NAME, szOID_RSA_emailAddr }; CERT_NAME_INFO *nameInfo = NULL; - PCERT_RDN_ATTR nameAttr = NULL; DWORD bytes = 0, i;
if (CryptDecodeObjectEx(pCertContext->dwCertEncodingType, X509_NAME, name->pbData, name->cbData, CRYPT_DECODE_ALLOC_FLAG, NULL, &nameInfo, &bytes)) { + PCERT_RDN_ATTR nameAttr = NULL; + for (i = 0; !nameAttr && i < sizeof(simpleAttributeOIDs) / sizeof(simpleAttributeOIDs[0]); i++) nameAttr = CertFindRDNAttr(simpleAttributeOIDs[i], nameInfo); + if (nameAttr) + ret = CertRDNValueToStrW(nameAttr->dwValueType, + &nameAttr->Value, pszNameString, cchNameString); + LocalFree(nameInfo); } - if (nameAttr) - ret = CertRDNValueToStrW(nameAttr->dwValueType, &nameAttr->Value, - pszNameString, cchNameString); - else + if (!ret) { CERT_ALT_NAME_INFO *altInfo; PCERT_ALT_NAME_ENTRY entry = cert_find_alt_name_entry(pCertContext, @@ -1035,8 +1037,6 @@ DWORD WINAPI CertGetNameStringW(PCCERT_CONTEXT pCertContext, DWORD dwType, LocalFree(altInfo); } } - if (nameInfo) - LocalFree(nameInfo); break; } case CERT_NAME_FRIENDLY_DISPLAY_TYPE: