From cb9e501a2893ec7e210a1de2550cb1ecf16d5c90 Mon Sep 17 00:00:00 2001 From: Josh Kalderimis Date: Mon, 4 Apr 2011 19:26:41 +0800 Subject: AM register_interceptor and register_observer only constantize if the argument is a String --- actionmailer/lib/action_mailer/base.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/actionmailer/lib/action_mailer/base.rb b/actionmailer/lib/action_mailer/base.rb index c21fd764b9..cd76383931 100644 --- a/actionmailer/lib/action_mailer/base.rb +++ b/actionmailer/lib/action_mailer/base.rb @@ -375,7 +375,7 @@ module ActionMailer #:nodoc: # Either a class or a string can be passed in as the Observer. If a string is passed in # it will be constantized. def register_observer(observer) - delivery_observer = (observer.respond_to?(:delivered_email) ? observer : observer.constantize) + delivery_observer = (observer.is_a?(String) ? observer.constantize : observer) Mail.register_observer(delivery_observer) end @@ -383,7 +383,7 @@ module ActionMailer #:nodoc: # Either a class or a string can be passed in as the Observer. If a string is passed in # it will be constantized. def register_interceptor(interceptor) - delivery_interceptor = (interceptor.respond_to?(:delivering_email) ? interceptor : interceptor.constantize) + delivery_interceptor = (interceptor.is_a?(String) ? interceptor.constantize : interceptor) Mail.register_interceptor(delivery_interceptor) end -- cgit v1.2.3