diff --git a/src/add-ons/mail_daemon/inbound_protocols/imap/imap_lib/IMAPProtocol.cpp b/src/add-ons/mail_daemon/inbound_protocols/imap/imap_lib/IMAPProtocol.cpp index 62df05c955..8255cc84e4 100644 --- a/src/add-ons/mail_daemon/inbound_protocols/imap/imap_lib/IMAPProtocol.cpp +++ b/src/add-ons/mail_daemon/inbound_protocols/imap/imap_lib/IMAPProtocol.cpp @@ -198,14 +198,17 @@ IMAPProtocol::Connect(const char* server, const char* username, TRACE("Login\n"); + fIsConnected = true; + BString command = "LOGIN "; command << "\"" << username << "\" "; command << "\"" << password << "\""; status = ProcessCommand(command); - if (status != B_OK) + if (status != B_OK) { + _Disconnect(); return status; + } - fIsConnected = true; return B_OK; }