-rw-r--r-- | kmicromail/composemail.cpp | 14 | ||||
-rw-r--r-- | kmicromail/libmailwrapper/smtpwrapper.cpp | 23 | ||||
-rw-r--r-- | kmicromail/libmailwrapper/smtpwrapper.h | 4 |
3 files changed, 25 insertions, 16 deletions
diff --git a/kmicromail/composemail.cpp b/kmicromail/composemail.cpp index 2c2e279..ca4f247 100644 --- a/kmicromail/composemail.cpp +++ b/kmicromail/composemail.cpp @@ -122,5 +122,5 @@ void ComposeMail::saveAsDraft() AttachViewItem *it = (AttachViewItem *) attList->firstChild(); /* attachments we will ignore! */ - if ( it != NULL ) { + if ( it != 0 ) { if ( warnAttach ) QMessageBox::warning(0,tr("Store message"), @@ -137,5 +137,5 @@ void ComposeMail::setStatus( QString status ) { topLevelWidget()->setCaption( status ); - QTimer::singleShot ( 5000, this, SLOT( clearStatus() ) ) ; + QTimer::singleShot ( 10000, this, SLOT( clearStatus() ) ) ; } void ComposeMail::pickAddress( QLineEdit *line ) @@ -301,5 +301,5 @@ void ComposeMail::accept() mail->setMessage( txt ); AttachViewItem *it = (AttachViewItem *) attList->firstChild(); - while ( it != NULL ) { + while ( it != 0 ) { mail->addAttachment( it->getAttachment() ); it = (AttachViewItem *) it->nextSibling(); @@ -307,5 +307,11 @@ void ComposeMail::accept() SMTPwrapper wrapper( smtp ); - wrapper.sendMail( mail,checkBoxLater->isChecked() ); + if ( wrapper.sendMail( mail,checkBoxLater->isChecked() ) ) + setStatus( tr ("Mail sent")); + else { + setStatus( tr ("Error: Something went wrong. Nothing sent")); + return; + } + QDialog::accept(); diff --git a/kmicromail/libmailwrapper/smtpwrapper.cpp b/kmicromail/libmailwrapper/smtpwrapper.cpp index 04a21ea..6a1b505 100644 --- a/kmicromail/libmailwrapper/smtpwrapper.cpp +++ b/kmicromail/libmailwrapper/smtpwrapper.cpp @@ -103,5 +103,5 @@ void SMTPwrapper::storeMail(const char*mail, size_t length, const QString&box) { } -void SMTPwrapper::smtpSend( mailmime *mail,bool later) { +bool SMTPwrapper::smtpSend( mailmime *mail,bool later) { clist *rcpts = 0; char *from, *data; @@ -119,6 +119,6 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later) { if (data) free(data); - ; // odebug << "Error fetching mime..." << oendl; - return; + qDebug("Error fetching mime... "); + return false; } msg = 0; @@ -131,9 +131,9 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later) { cfg.writeEntry( "outgoing", ++m_queuedMail ); emit queuedMails( m_queuedMail ); - return; + return true; } from = getFrom( mail ); rcpts = createRcptList( mail->mm_data.mm_message.mm_fields ); - smtpSend(from,rcpts,data,size); + bool result = smtpSend(from,rcpts,data,size); if (data) { free(data); @@ -144,4 +144,5 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later) { if (rcpts) smtp_address_list_free( rcpts ); + return result; } @@ -317,16 +318,17 @@ int SMTPwrapper::smtpSend(char*from,clist*rcpts,const char*data,size_t size ) } -void SMTPwrapper::sendMail(const Opie::Core::OSmartPointer<Mail>&mail,bool later ) +bool SMTPwrapper::sendMail(const Opie::Core::OSmartPointer<Mail>&mail,bool later ) { mailmime * mimeMail; - + bool result = true; mimeMail = createMimeMail(mail ); - if ( mimeMail == NULL ) { - ; // odebug << "sendMail: error creating mime mail" << oendl; + if ( mimeMail == 0 ) { + qDebug("SMTP wrapper:Error creating mail! "); + return false; } else { sendProgress = new progressMailSend(); sendProgress->show(); sendProgress->setMaxMails(1); - smtpSend( mimeMail,later); + result = smtpSend( mimeMail,later); ; // odebug << "Clean up done" << oendl; sendProgress->hide(); @@ -335,4 +337,5 @@ void SMTPwrapper::sendMail(const Opie::Core::OSmartPointer<Mail>&mail,bool later mailmime_free( mimeMail ); } + return result; } diff --git a/kmicromail/libmailwrapper/smtpwrapper.h b/kmicromail/libmailwrapper/smtpwrapper.h index 6c5bbe8..105cbf5 100644 --- a/kmicromail/libmailwrapper/smtpwrapper.h +++ b/kmicromail/libmailwrapper/smtpwrapper.h @@ -24,5 +24,5 @@ public: SMTPwrapper(SMTPaccount * aSmtp); virtual ~SMTPwrapper(); - void sendMail(const Opie::Core::OSmartPointer<Mail>& mail,bool later=false ); + bool sendMail(const Opie::Core::OSmartPointer<Mail>& mail,bool later=false ); bool flushOutbox(); @@ -41,5 +41,5 @@ protected: - void smtpSend( mailmime *mail,bool later); + bool smtpSend( mailmime *mail,bool later); static void storeMail(const char*mail, size_t length, const QString&box); |