diff options
author | Don Sanders <don.sanders@nokia.com> | 2011-06-07 14:58:50 +0300 |
---|---|---|
committer | Don Sanders <don.sanders@nokia.com> | 2011-06-07 14:58:50 +0300 |
commit | a540e24ae40a2233c2bcc2c7dcdb81c45ddd9d05 (patch) | |
tree | 295979a5c3072f3592f941cb5adbf4f8368341cb | |
parent | 00ab90b1c58f655fa33b487c7ed1a634c84a1a41 (diff) |
Fix a regression with imap/pop services not adapting to account changes.
-rw-r--r-- | src/plugins/messageservices/imap/imapclient.cpp | 4 | ||||
-rw-r--r-- | src/plugins/messageservices/imap/imapstrategy.cpp | 3 | ||||
-rw-r--r-- | src/plugins/messageservices/pop/popclient.cpp | 8 |
3 files changed, 8 insertions, 7 deletions
diff --git a/src/plugins/messageservices/imap/imapclient.cpp b/src/plugins/messageservices/imap/imapclient.cpp index 58a87d9f..9450430a 100644 --- a/src/plugins/messageservices/imap/imapclient.cpp +++ b/src/plugins/messageservices/imap/imapclient.cpp @@ -485,11 +485,11 @@ ImapClient::~ImapClient() // Called to begin executing a strategy void ImapClient::newConnection() { + // Reload the account configuration + _config = QMailAccountConfiguration(_config.id()); if (_protocol.loggingOut()) _protocol.close(); if (!_protocol.inUse()) { - // Reload the account configuration - _config = QMailAccountConfiguration(_config.id()); _qresyncEnabled = false; } if (_requestRapidClose && !_inactiveTimer.isActive()) diff --git a/src/plugins/messageservices/imap/imapstrategy.cpp b/src/plugins/messageservices/imap/imapstrategy.cpp index f819afc6..43205afc 100644 --- a/src/plugins/messageservices/imap/imapstrategy.cpp +++ b/src/plugins/messageservices/imap/imapstrategy.cpp @@ -1468,10 +1468,11 @@ void ImapFetchSelectedMessagesStrategy::setOperation( ImapStrategyContextBase *context, QMailRetrievalAction::RetrievalSpecification spec) { + QMailAccountConfiguration accountCfg(context->config().id()); + ImapConfiguration imapCfg(accountCfg); switch (spec) { case QMailRetrievalAction::Auto: { - ImapConfiguration imapCfg(context->config()); if (imapCfg.isAutoDownload()) { // Just download everything _headerLimit = UINT_MAX; diff --git a/src/plugins/messageservices/pop/popclient.cpp b/src/plugins/messageservices/pop/popclient.cpp index 6042e59b..733daaa7 100644 --- a/src/plugins/messageservices/pop/popclient.cpp +++ b/src/plugins/messageservices/pop/popclient.cpp @@ -122,10 +122,9 @@ void PopClient::newConnection() status = Exit; closeConnection(); } - } else { - // Re-load the configuration for this account - config = QMailAccountConfiguration(config.id()); } + // Re-load the configuration for this account + config = QMailAccountConfiguration(config.id()); PopConfiguration popCfg(config); if ( popCfg.mailServer().isEmpty() ) { @@ -199,7 +198,8 @@ void PopClient::setOperation(QMailRetrievalAction::RetrievalSpecification spec) switch (spec) { case QMailRetrievalAction::Auto: { - PopConfiguration popCfg(config); + // Re-load the configuration for this account + PopConfiguration popCfg(QMailAccountConfiguration(config.id())); if (popCfg.isAutoDownload()) { // Just download everything |