diff options
author | Bogdan Gusiev <agresso@gmail.com> | 2011-11-10 16:42:27 +0200 |
---|---|---|
committer | Bogdan Gusiev <agresso@gmail.com> | 2011-11-10 16:42:27 +0200 |
commit | 08cc49b919cfa43a19f55b761dba56bc3673b6b7 (patch) | |
tree | 7c6b81a4c0789548eb918636390f2a6f3efa0682 /activesupport | |
parent | 80f96ebcf5218cafd2b29e58c7b0c55a07e2fe22 (diff) | |
download | rails-08cc49b919cfa43a19f55b761dba56bc3673b6b7.tar.gz rails-08cc49b919cfa43a19f55b761dba56bc3673b6b7.tar.bz2 rails-08cc49b919cfa43a19f55b761dba56bc3673b6b7.zip |
AS::Callbacks.__run_keyed_callback: remove unused cache
Diffstat (limited to 'activesupport')
-rw-r--r-- | activesupport/lib/active_support/callbacks.rb | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/activesupport/lib/active_support/callbacks.rb b/activesupport/lib/active_support/callbacks.rb index 31737d54cb..962299bf7c 100644 --- a/activesupport/lib/active_support/callbacks.rb +++ b/activesupport/lib/active_support/callbacks.rb @@ -394,16 +394,12 @@ module ActiveSupport # def __run_keyed_callback(key, kind, object, &blk) #:nodoc: name = "_run__#{self.name.hash.abs}__#{kind}__#{key.hash.abs}__callbacks" - unless respond_to?(name) - @_keyed_callbacks ||= {} - @_keyed_callbacks[name] ||= begin - str = send("_#{kind}_callbacks").compile(name, object) - class_eval <<-RUBY_EVAL, __FILE__, __LINE__ + 1 - def #{name}() #{str} end - protected :#{name} - RUBY_EVAL - true - end + unless object.respond_to?(name) + str = send("_#{kind}_callbacks").compile(name, object) + class_eval <<-RUBY_EVAL, __FILE__, __LINE__ + 1 + def #{name}() #{str} end + protected :#{name} + RUBY_EVAL end object.send(name, &blk) end |