зеркало из https://github.com/mozilla/gecko-dev.git
fix string fu in auth smtp password prompt, was using tmp var that could get freed up, patch by neil@parkwaycc.co.uk/dwitte@stanford.edu, r/sr=me 90507
This commit is contained in:
Родитель
57d8a01c3b
Коммит
9051645d49
|
@ -1709,9 +1709,10 @@ nsSmtpProtocol::GetPassword(char **aPassword)
|
||||||
rv = smtpServer->GetUsername(getter_Copies(username));
|
rv = smtpServer->GetUsername(getter_Copies(username));
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
|
NS_ConvertASCIItoUCS2 usernameUTF16(username);
|
||||||
const PRUnichar *formatStrings[] =
|
const PRUnichar *formatStrings[] =
|
||||||
{
|
{
|
||||||
NS_ConvertASCIItoUCS2(username).get(),
|
usernameUTF16.get(),
|
||||||
nsnull // this will be overwritten in some cases.
|
nsnull // this will be overwritten in some cases.
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1719,12 +1720,14 @@ nsSmtpProtocol::GetPassword(char **aPassword)
|
||||||
rv = prefBranch->GetBoolPref(prefName.get(), &hideHostnameForPassword);
|
rv = prefBranch->GetBoolPref(prefName.get(), &hideHostnameForPassword);
|
||||||
// for certain redirector types, we don't want to show the
|
// for certain redirector types, we don't want to show the
|
||||||
// hostname to the user when prompting for password
|
// hostname to the user when prompting for password
|
||||||
|
nsAutoString hostnameUTF16;
|
||||||
if (!hideHostnameForPassword)
|
if (!hideHostnameForPassword)
|
||||||
{
|
{
|
||||||
nsXPIDLCString hostname;
|
nsXPIDLCString hostname;
|
||||||
rv = smtpServer->GetHostname(getter_Copies(hostname));
|
rv = smtpServer->GetHostname(getter_Copies(hostname));
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
formatStrings[1] = NS_ConvertASCIItoUCS2(hostname).get();
|
CopyASCIItoUTF16(hostname, hostnameUTF16);
|
||||||
|
formatStrings[1] = hostnameUTF16.get();
|
||||||
}
|
}
|
||||||
rv = PromptForPassword(smtpServer, smtpUrl, formatStrings, aPassword);
|
rv = PromptForPassword(smtpServer, smtpUrl, formatStrings, aPassword);
|
||||||
NS_ENSURE_SUCCESS(rv,rv);
|
NS_ENSURE_SUCCESS(rv,rv);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче