From f97b41e5d1bf0729bb30e75ab99899d9f768c95a Mon Sep 17 00:00:00 2001 From: "jgmyers%speakeasy.net" Date: Fri, 5 Mar 2004 05:42:45 +0000 Subject: [PATCH] make two strings localizable bug 178881 r=ssaux sr=blizzard --- .../resources/locale/en-US/pipnss.properties | 2 ++ security/manager/ssl/src/nsNSSCertificate.cpp | 34 +++++++++++++------ 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/security/manager/ssl/resources/locale/en-US/pipnss.properties b/security/manager/ssl/resources/locale/en-US/pipnss.properties index 31a4a78bdfa..36206f7b0f4 100644 --- a/security/manager/ssl/resources/locale/en-US/pipnss.properties +++ b/security/manager/ssl/resources/locale/en-US/pipnss.properties @@ -265,3 +265,5 @@ VerifyIssuerNotTrusted= VerifyIssuerUnknown= VerifyInvalidCA= VerifyUnknown= +CertNoNickname=(no nickname) +CertNoEmailAddress=(no email address) diff --git a/security/manager/ssl/src/nsNSSCertificate.cpp b/security/manager/ssl/src/nsNSSCertificate.cpp index 930883c4e90..5d51a156152 100644 --- a/security/manager/ssl/src/nsNSSCertificate.cpp +++ b/security/manager/ssl/src/nsNSSCertificate.cpp @@ -215,8 +215,7 @@ nsNSSCertificate::FormatUIStrings(const nsAutoString &nickname, nsAutoString &ni return NS_ERROR_FAILURE; } - NS_DEFINE_CID(nssComponentCID, NS_NSSCOMPONENT_CID); - nsCOMPtr nssComponent(do_GetService(nssComponentCID, &rv)); + nsCOMPtr nssComponent(do_GetService(kNSSComponentCID, &rv)); if (NS_FAILED(rv) || !nssComponent) { return NS_ERROR_FAILURE; @@ -408,29 +407,42 @@ nsNSSCertificate::GetWindowTitle(char * *aWindowTitle) } NS_IMETHODIMP -nsNSSCertificate::GetNickname(nsAString &_nickname) +nsNSSCertificate::GetNickname(nsAString &aNickname) { nsNSSShutDownPreventionLock locker; if (isAlreadyShutDown()) return NS_ERROR_NOT_AVAILABLE; -// XXX kaie: this is bad. We return a non localizable hardcoded string. - const char *nickname = (mCert->nickname) ? mCert->nickname : "(no nickname)"; - _nickname = NS_ConvertUTF8toUCS2(nickname); + if (mCert->nickname) { + CopyUTF8toUTF16(mCert->nickname, aNickname); + } else { + nsresult rv; + nsCOMPtr nssComponent(do_GetService(kNSSComponentCID, &rv)); + if (NS_FAILED(rv) || !nssComponent) { + return NS_ERROR_FAILURE; + } + nssComponent->GetPIPNSSBundleString("CertNoNickname", aNickname); + } return NS_OK; } NS_IMETHODIMP -nsNSSCertificate::GetEmailAddress(nsAString &_emailAddress) +nsNSSCertificate::GetEmailAddress(nsAString &aEmailAddress) { nsNSSShutDownPreventionLock locker; if (isAlreadyShutDown()) return NS_ERROR_NOT_AVAILABLE; -// XXX kaie: this is bad. We return a non localizable hardcoded string. -// And agents could be confused, assuming the email address == "(no nickname)" - const char *email = (mCert->emailAddr) ? mCert->emailAddr : "(no email address)"; - _emailAddress = NS_ConvertUTF8toUCS2(email); + if (mCert->emailAddr) { + CopyUTF8toUTF16(mCert->emailAddr, aEmailAddress); + } else { + nsresult rv; + nsCOMPtr nssComponent(do_GetService(kNSSComponentCID, &rv)); + if (NS_FAILED(rv) || !nssComponent) { + return NS_ERROR_FAILURE; + } + nssComponent->GetPIPNSSBundleString("CertNoEmailAddress", aEmailAddress); + } return NS_OK; }