From 757720198c7770dac645a970e53cccb77728b6a7 Mon Sep 17 00:00:00 2001 From: wmorgan Date: Wed, 30 May 2007 07:08:39 +0000 Subject: [PATCH] handle sendmail command failing (thanks brian) git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@421 5c8cc53c-5e98-4d25-b20a-d8db53a31250 --- lib/sup/modes/edit-message-mode.rb | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/lib/sup/modes/edit-message-mode.rb b/lib/sup/modes/edit-message-mode.rb index acffd82..bf48a64 100644 --- a/lib/sup/modes/edit-message-mode.rb +++ b/lib/sup/modes/edit-message-mode.rb @@ -118,13 +118,20 @@ protected end acct = AccountManager.account_for(from_email) || AccountManager.default_account - SentManager.write_sent_message(date, from_email) { |f| write_message f, true, date } BufferManager.flash "Sending..." - IO.popen(acct.sendmail, "w") { |p| write_message p, true, date } - - BufferManager.kill_buffer buffer - BufferManager.flash "Message sent!" + begin + IO.popen(acct.sendmail, "w") { |p| write_message p, true, date } + rescue SystemCallError + end + if $? == 0 + SentManager.write_sent_message(date, from_email) { |f| write_message f, true, date } + BufferManager.kill_buffer buffer + BufferManager.flash "Message sent!" + else + Redwood::log "Non-zero return value in running sendmail command for #{acct.longname}: #{acct.sendmail.inspect}" + BufferManager.flash "Problem sending mail. See log for details." + end end def save_as_draft -- 2.45.2