diff options
author | José Valim <jose.valim@gmail.com> | 2010-03-13 21:28:34 +0100 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-03-13 21:28:34 +0100 |
commit | 4ba334c0f4dac35b0c02cf3c4cca47d328283009 (patch) | |
tree | 67c88d5bd1693268242bd02a504f0a5233dffe86 /actionpack/lib/action_controller | |
parent | ee4c89627ad5d7b041b88ab4027d3f0d5d582d8e (diff) | |
download | rails-4ba334c0f4dac35b0c02cf3c4cca47d328283009.tar.gz rails-4ba334c0f4dac35b0c02cf3c4cca47d328283009.tar.bz2 rails-4ba334c0f4dac35b0c02cf3c4cca47d328283009.zip |
Ensure controller filters are executed before stuff starts to happen.
Diffstat (limited to 'actionpack/lib/action_controller')
-rw-r--r-- | actionpack/lib/action_controller/base.rb | 8 | ||||
-rw-r--r-- | actionpack/lib/action_controller/metal/rendering.rb | 2 |
2 files changed, 7 insertions, 3 deletions
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb index fcd3cb9bd3..ad2b68af21 100644 --- a/actionpack/lib/action_controller/base.rb +++ b/actionpack/lib/action_controller/base.rb @@ -2,7 +2,6 @@ module ActionController class Base < Metal abstract! - include AbstractController::Callbacks include AbstractController::Layouts include AbstractController::Translation @@ -23,6 +22,7 @@ module ActionController # Rails 2.x compatibility include ActionController::Compatibility + include ActionController::ImplicitRender include ActionController::Cookies include ActionController::Flash @@ -36,8 +36,12 @@ module ActionController # Add instrumentations hooks at the bottom, to ensure they instrument # all the methods properly. include ActionController::Instrumentation - include ImplicitRender + # Before callbacks should also be executed the earliest as possible, so + # also include them at the bottom. + include AbstractController::Callbacks + + # The same with rescue, append it at the end to wrap as much as possible. include ActionController::Rescue def self.inherited(klass) diff --git a/actionpack/lib/action_controller/metal/rendering.rb b/actionpack/lib/action_controller/metal/rendering.rb index 2167fe9a32..86bb810947 100644 --- a/actionpack/lib/action_controller/metal/rendering.rb +++ b/actionpack/lib/action_controller/metal/rendering.rb @@ -6,7 +6,7 @@ module ActionController include AbstractController::Rendering # Before processing, set the request formats in current controller formats. - def process(*) #:nodoc: + def process_action(*) #:nodoc: self.formats = request.formats.map { |x| x.to_sym } super end |