From df46d704e882823c30bc5cf0f2b88da8db98b47f 2010-01-31 11:41:58 From: Jean-Philippe Lang Date: 2010-01-31 11:41:58 Subject: [PATCH] Log email delivery errors. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3356 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/app/models/mailer.rb b/app/models/mailer.rb index b16b6a1..00a390a 100644 --- a/app/models/mailer.rb +++ b/app/models/mailer.rb @@ -284,7 +284,21 @@ class Mailer < ActionMailer::Base if @references_objects mail.references = @references_objects.collect {|o| self.class.message_id_for(o)} end - super(mail) + + # Log errors when raise_delivery_errors is set to false, Rails does not + raise_errors = self.class.raise_delivery_errors + self.class.raise_delivery_errors = true + begin + return super(mail) + rescue Exception => e + if raise_errors + raise e + elsif mylogger + mylogger.error "The following error occured while sending email notification: \"#{e.message}\". Check your configuration in config/email.yml." + end + ensure + self.class.raise_delivery_errors = raise_errors + end end # Sends reminders to issue assignees