diff --git a/resources/imap/imapresourcebase.cpp b/resources/imap/imapresourcebase.cpp --- a/resources/imap/imapresourcebase.cpp +++ b/resources/imap/imapresourcebase.cpp @@ -300,10 +300,11 @@ case SessionPool::IncompatibleServerError: setOnline(false); Q_EMIT status(Broken, errorString); - cancelTask(); + cancelTask(errorString); return; case SessionPool::CouldNotConnectError: + case SessionPool::CancelledError: // e.g. we got disconnected during login Q_EMIT status(Idle, i18n("Server is not available.")); deferTask(); setTemporaryOffline((m_pool->account() && m_pool->account()->timeout() > 0) ? m_pool->account()->timeout() : 300); @@ -316,9 +317,6 @@ case SessionPool::NoAvailableSessionError: qFatal("Shouldn't happen"); return; - case SessionPool::CancelledError: - qCWarning(IMAPRESOURCE_LOG) << "Session login cancelled"; - return; } }