lib/devise/models/authenticatable.rb in devise-3.3.0 vs lib/devise/models/authenticatable.rb in devise-3.4.0

- old
+ new

@@ -168,11 +168,17 @@ # @pending_notifications ||= [] # end # end # def send_devise_notification(notification, *args) - devise_mailer.send(notification, self, *args).deliver + message = devise_mailer.send(notification, self, *args) + # Remove once we move to Rails 4.2+ only. + if message.respond_to?(:deliver_now) + message.deliver_now + else + message.deliver + end end def downcase_keys self.class.case_insensitive_keys.each { |k| apply_to_attribute_or_variable(k, :downcase) } end @@ -251,10 +257,10 @@ find_or_initialize_with_errors([attribute], { attribute => value }, error) end # Find an initialize a group of attributes based on a list of required attributes. def find_or_initialize_with_errors(required_attributes, attributes, error=:invalid) #:nodoc: - attributes = attributes.slice(*required_attributes) + attributes = attributes.slice(*required_attributes).with_indifferent_access attributes.delete_if { |key, value| value.blank? } if attributes.size == required_attributes.size record = find_first_by_auth_conditions(attributes) end