Fixed that Mailer.with_synched_deliveries does not use delivery settings (#11550).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@10147 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2012-07-31 18:09:33 +00:00
parent 77d94818a4
commit c57a2974d1

View File

@ -361,7 +361,9 @@ class Mailer < ActionMailer::Base
def self.with_synched_deliveries(&block)
saved_method = ActionMailer::Base.delivery_method
if m = saved_method.to_s.match(%r{^async_(.+)$})
ActionMailer::Base.delivery_method = m[1].to_sym
synched_method = m[1]
ActionMailer::Base.delivery_method = synched_method.to_sym
ActionMailer::Base.send "#{synched_method}_settings=", ActionMailer::Base.send("async_#{synched_method}_settings")
end
yield
ensure