aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2004-12-08 17:39:44 +0000
committerDavid Heinemeier Hansson <david@loudthinking.com>2004-12-08 17:39:44 +0000
commitac4a039a31dc575428b1632b3f07b2da237921ca (patch)
tree7e2f3282fa013d8109d57cc358c3d4c636b3dae7
parent04d032ed436ed76a83a45978c9840e8ad8aea669 (diff)
downloadrails-ac4a039a31dc575428b1632b3f07b2da237921ca.tar.gz
rails-ac4a039a31dc575428b1632b3f07b2da237921ca.tar.bz2
rails-ac4a039a31dc575428b1632b3f07b2da237921ca.zip
Callbacks added to the inheritable que should only be called once -- even as the definition is read again
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@90 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
-rwxr-xr-xactiverecord/lib/active_record/callbacks.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/callbacks.rb b/activerecord/lib/active_record/callbacks.rb
index 2ffe9db693..7a95ca6bce 100755
--- a/activerecord/lib/active_record/callbacks.rb
+++ b/activerecord/lib/active_record/callbacks.rb
@@ -191,7 +191,7 @@ module ActiveRecord
alias_method :destroy, :destroy_with_callbacks
end
- CALLBACKS.each { |cb| base.class_eval("def self.#{cb}(*methods) write_inheritable_array(\"#{cb}\", methods) end") }
+ CALLBACKS.each { |cb| base.class_eval("def self.#{cb}(*methods) write_inheritable_attribute(\"#{cb}\", (read_inheritable_attribute(\"#{cb}\") + methods).uniq) end") }
end
module ClassMethods #:nodoc: