diff options
author | Michael Lovitt <michael@lovitt.net> | 2009-01-09 18:09:50 -0500 |
---|---|---|
committer | Michael Koziarski <michael@koziarski.com> | 2009-01-16 10:11:58 +1300 |
commit | 7a0e7c7270548138a333bc39aab5aec80580174b (patch) | |
tree | 393b3c37e3ef4959a2ddba44655207a65adeee4a /activerecord/lib | |
parent | c891d685de9a729332836751c1293770b86a1b52 (diff) | |
download | rails-7a0e7c7270548138a333bc39aab5aec80580174b.tar.gz rails-7a0e7c7270548138a333bc39aab5aec80580174b.tar.bz2 rails-7a0e7c7270548138a333bc39aab5aec80580174b.zip |
Fixed broken after_save callback; was being called when before_create was canceled or before_update was canceled
Signed-off-by: Michael Koziarski <michael@koziarski.com>
[#1735 state:committed]
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/callbacks.rb | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/callbacks.rb b/activerecord/lib/active_record/callbacks.rb index 42bfe34505..9f5384d39a 100644 --- a/activerecord/lib/active_record/callbacks.rb +++ b/activerecord/lib/active_record/callbacks.rb @@ -219,8 +219,9 @@ module ActiveRecord def after_save() end def create_or_update_with_callbacks #:nodoc: return false if callback(:before_save) == false - result = create_or_update_without_callbacks - callback(:after_save) + if result = create_or_update_without_callbacks + callback(:after_save) + end result end private :create_or_update_with_callbacks |