-rw-r--r-- | kmicromail/editaccounts.cpp | 12 | ||||
-rw-r--r-- | kmicromail/libmailwrapper/smtpwrapper.cpp | 17 |
2 files changed, 25 insertions, 4 deletions
diff --git a/kmicromail/editaccounts.cpp b/kmicromail/editaccounts.cpp index 49049f6..2c0f2d8 100644 --- a/kmicromail/editaccounts.cpp +++ b/kmicromail/editaccounts.cpp @@ -348,4 +348,5 @@ void IMAPconfig::slotConnectionToggle( int index ) { portLine->setText( IMAP_SSL_PORT ); + CommandEdit->hide(); } else if ( index == 3 ) @@ -357,4 +358,5 @@ void IMAPconfig::slotConnectionToggle( int index ) { portLine->setText( IMAP_PORT ); + CommandEdit->hide(); } } @@ -429,4 +431,5 @@ void POP3config::slotConnectionToggle( int index ) { portLine->setText( POP3_SSL_PORT ); + CommandEdit->hide(); } else if ( index == 3 ) @@ -438,4 +441,5 @@ void POP3config::slotConnectionToggle( int index ) { portLine->setText( POP3_PORT ); + CommandEdit->hide(); } } @@ -521,10 +525,11 @@ void SMTPconfig::chooseSig() void SMTPconfig::slotConnectionToggle( int index ) { - // 2 is ssl connection - if ( index == 2 ) + // 3 is ssl connection + if ( index == 3 ) { portLine->setText( SMTP_SSL_PORT ); + CommandEdit->hide(); } - else if ( index == 3 ) + else if ( index == 4 ) { portLine->setText( SMTP_PORT ); @@ -534,4 +539,5 @@ void SMTPconfig::slotConnectionToggle( int index ) { portLine->setText( SMTP_PORT ); + CommandEdit->hide(); } } diff --git a/kmicromail/libmailwrapper/smtpwrapper.cpp b/kmicromail/libmailwrapper/smtpwrapper.cpp index 872a460..845c71c 100644 --- a/kmicromail/libmailwrapper/smtpwrapper.cpp +++ b/kmicromail/libmailwrapper/smtpwrapper.cpp @@ -245,5 +245,5 @@ void SMTPwrapper::connect_server() } } - if (try_tls) { + if (result && try_tls) { qDebug("Smpt: Try tls "); err = start_smtp_tls(); @@ -253,4 +253,6 @@ void SMTPwrapper::connect_server() } else { err = mailesmtp_ehlo(m_smtp); + if ( err != MAILSMTP_NO_ERROR ) + result = 0; } } @@ -291,4 +293,8 @@ void SMTPwrapper::connect_server() } } + if ( result == 0 ) { + mailsmtp_free(m_smtp); + m_smtp = 0; + } } @@ -348,4 +354,8 @@ bool SMTPwrapper::sendMail(const Opie::Core::OSmartPointer<Mail>&mail,bool later sendProgress = 0; mailmime_free( mimeMail ); + if ( m_smtp ) { + mailsmtp_free(m_smtp); + m_smtp = 0; + } } return result; @@ -459,4 +469,5 @@ bool SMTPwrapper::flushOutbox() { m_SmtpAccount->setPassword(oldPw); } + KConfig cfg( locateLocal("config", "kopiemailrc" ) ); cfg.setGroup( "Status" ); @@ -469,4 +480,8 @@ bool SMTPwrapper::flushOutbox() { wrap->deleteMails(mbox,mailsToRemove); delete wrap; + if ( m_smtp ) { + mailsmtp_free(m_smtp); + m_smtp = 0; + } return returnValue; } |