From cc67ce39cdd7730caee878da3b191d76cad9479f Mon Sep 17 00:00:00 2001 From: zautrix Date: Sat, 03 Jul 2004 19:26:15 +0000 Subject: better error handling --- (limited to 'kmicromail/libmailwrapper/smtpwrapper.cpp') 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 @@ -102,7 +102,7 @@ void SMTPwrapper::storeMail(const char*mail, size_t length, const QString&box) { delete wrap; } -void SMTPwrapper::smtpSend( mailmime *mail,bool later) { +bool SMTPwrapper::smtpSend( mailmime *mail,bool later) { clist *rcpts = 0; char *from, *data; size_t size; @@ -118,8 +118,8 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later) { if (r != MAIL_NO_ERROR || !data) { if (data) free(data); - ; // odebug << "Error fetching mime..." << oendl; - return; + qDebug("Error fetching mime... "); + return false; } msg = 0; if (later) { @@ -130,11 +130,11 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later) { cfg.setGroup( "Status" ); 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); } @@ -143,6 +143,7 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later) { } if (rcpts) smtp_address_list_free( rcpts ); + return result; } void SMTPwrapper::storeFailedMail(const char*data,unsigned int size, const char*failuremessage) @@ -316,24 +317,26 @@ int SMTPwrapper::smtpSend(char*from,clist*rcpts,const char*data,size_t size ) return result; } -void SMTPwrapper::sendMail(const Opie::Core::OSmartPointer&mail,bool later ) +bool SMTPwrapper::sendMail(const Opie::Core::OSmartPointer&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(); delete sendProgress; sendProgress = 0; mailmime_free( mimeMail ); } + return result; } int SMTPwrapper::sendQueuedMail(AbstractMail*wrap,const RecMailP&which) { -- cgit v0.9.0.2