Permalink
Browse files

Merge pull request #4189 from bogdan/non_keyed_callbacks

AS::Callbacks: improved __define_runner performance
  • Loading branch information...
2 parents 748725e + 7e75dc5 commit e33c94675336344c31d9701cdd20b026354339e7 @josevalim josevalim committed Dec 25, 2011
Showing with 2 additions and 3 deletions.
  1. +2 −3 activesupport/lib/active_support/callbacks.rb
@@ -381,9 +381,8 @@ def __define_runner(symbol) #:nodoc:
name = __callback_runner_name(nil, symbol)
undef_method(name) if method_defined?(name)
- silence_warnings do
- runner_method = "_run_#{symbol}_callbacks"
- undef_method runner_method if method_defined?(runner_method)
+ runner_method = "_run_#{symbol}_callbacks"
+ unless private_method_defined?(runner_method)
class_eval <<-RUBY_EVAL, __FILE__, __LINE__ + 1
def #{runner_method}(key = nil, &blk)
self.class.__run_callback(key, :#{symbol}, self, &blk)

0 comments on commit e33c946

Please sign in to comment.