Closed Bug 254385 Opened 20 years ago Closed 20 years ago

changing default smtp servers does not stick

Categories

(Thunderbird :: Account Manager, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 222388

People

(Reporter: mrsteveo, Assigned: mscott)

Details

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.8 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.8 If you have for instance, smtp.internetcds.com and mail.mind.net and change the default, it doesn't seem to stick. Removing the one you don't want and leaving just one makes it use the right one, but changing from one default to the other appears ignored in Thunderbird 0.9.3 Reproducible: Always Steps to Reproduce: 1. Add 2 SMTP servers. 2. Change the default server 3. Attempt to send mail and see if it's using the new default SMTP server you chose. Actual Results: When I had smtp.mind.net as the default, I changed to smtp.mind.net as the default and when I sent mail, it still used the wrong server, even with the default set. Expected Results: I would have expected Thunderbird to use the server that's marked 'default.' Fresh install of 0.9.3 of Thunderbird. No themes.. nothing fancy.
Same problem in Mozilla 1.7.2. Exiting and restarting Mozilla does not solve it, I have to delete the first server to make it send the message to the second one.
I have the same problem in version 1.0. Very annoying to have to delete the other smtp server to change it.
I also could reproduce the same behavior. If you take a look at the function GetSmtpServerByIdentity() in mailnews/compose/src/nsSmtpService.cpp, you could find that 'identity's preferred server' has precedence over 'default server'. NS_IMETHODIMP nsSmtpService::GetSmtpServerByIdentity(nsIMsgIdentity *aSenderIdentity, nsISmtpServer **aSmtpServer) { ... // First try the identity's preferred server if (aSenderIdentity) { nsXPIDLCString smtpServerKey; rv = aSenderIdentity->GetSmtpServerKey(getter_Copies(smtpServerKey)); if (NS_SUCCEEDED(rv) && !(smtpServerKey.IsEmpty())) rv = GetServerByKey(smtpServerKey, aSmtpServer); } // Fallback to the default if (NS_FAILED(rv) || !(*aSmtpServer)) rv = GetDefaultServer(aSmtpServer); return rv; } In other words, thunderbird has two types of smtp server setting - default & identity's preferred, and uses the latter if it is valid. I believe that this logic confuses users. Even worse, it is hard to find the place for setting identity's preferred server. A temporary solution could be changing identity's preferred server (with notice) when a user changes default smtp server. FYI, This bug seems to be duplication of #170089. Same to bug #265198.
I also could reproduce the same behavior. If you take a look at the function GetSmtpServerByIdentity() in mailnews/compose/src/nsSmtpService.cpp, you could find that 'identity's preferred server' has precedence over 'default server'. NS_IMETHODIMP nsSmtpService::GetSmtpServerByIdentity(nsIMsgIdentity *aSenderIdentity, nsISmtpServer **aSmtpServer) { ... // First try the identity's preferred server if (aSenderIdentity) { nsXPIDLCString smtpServerKey; rv = aSenderIdentity->GetSmtpServerKey(getter_Copies(smtpServerKey)); if (NS_SUCCEEDED(rv) && !(smtpServerKey.IsEmpty())) rv = GetServerByKey(smtpServerKey, aSmtpServer); } // Fallback to the default if (NS_FAILED(rv) || !(*aSmtpServer)) rv = GetDefaultServer(aSmtpServer); return rv; } In other words, thunderbird has two types of smtp server setting - default & identity's preferred, and uses the latter if it is valid. I believe that this logic confuses users. Even worse, it is hard to find the place for setting identity's preferred server. A temporary solution could be changing identity's preferred server (with notice) when a user changes default smtp server. FYI, This bug seems to be duplication of #170089. Same to bug #265198.
(In reply to comment #4) sorry for posting the comment twice, my mistake ;-)
This is not the bug... The real issue, I found out with some help from the support forums, is the "Always Use Default Server" setting is not set by default. You must set this for each account so they use the default server instead of the server Thunderbird Assigns to it. Tools->Account Settings Click Email Account Click Server Settings Click Advanced Click SMTP tab Select "Always Use Default Server" from the Combo Box Make sure this is set for each account you want to use the default SMTP server. It's been working since I did that.
(In reply to comment #6) > This is not the bug... The real issue, I found out with some help from the > support forums, is the "Always Use Default Server" setting is not set by > default. Joey, thanks for your comment. Now, I got better understanding of this issue. Also, I found that the discussion in bug 170089 also designated same point.
Joey seems to have understood Bug 222388(probably Bug 170089 comment #15 too), and Jeongkyu Kim seems to have has understood Bug 170089. Steve Ryan(bug opener) and Jerry Zdenek, still problem exists? If yes, read Thunderbird FAQ at Knowledge Base of MozillaZine first. http://kb.mozillazine.org/index.phtml?title=Thunderbird_:_FAQs_:_Multiple_SMTP_Servers (nest is also recommended) http://kb.mozillazine.org/index.phtml?title=Thunderbird_:_FAQs_:_Multiple_Identities Still in trouble?
*** This bug has been marked as a duplicate of 222388 ***
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.