diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2015-08-07 16:00:57 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2015-08-07 16:00:57 -0700 |
commit | 81cfdf2489fe436bb70e0e44c5683c57d0247850 (patch) | |
tree | 233d797b6e42661284897698be5cd7e0a8d13b4f /actionpack/lib/action_controller | |
parent | 2a3c47ff5d4ed7391d8a2d02a6baa1f1f55a8df3 (diff) | |
download | rails-81cfdf2489fe436bb70e0e44c5683c57d0247850.tar.gz rails-81cfdf2489fe436bb70e0e44c5683c57d0247850.tar.bz2 rails-81cfdf2489fe436bb70e0e44c5683c57d0247850.zip |
stop using @_env in the controller instance
Actions are processed through `dispatch`, so they should have the
request set on them before any user land code can be executed. Lets
stop setting _env on the controller, and give access to it through the
`env` method.
Diffstat (limited to 'actionpack/lib/action_controller')
-rw-r--r-- | actionpack/lib/action_controller/base.rb | 2 | ||||
-rw-r--r-- | actionpack/lib/action_controller/metal.rb | 5 |
2 files changed, 3 insertions, 4 deletions
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb index 17371a5392..55734b9774 100644 --- a/actionpack/lib/action_controller/base.rb +++ b/actionpack/lib/action_controller/base.rb @@ -252,7 +252,7 @@ module ActionController # Define some internal variables that should not be propagated to the view. PROTECTED_IVARS = AbstractController::Rendering::DEFAULT_PROTECTED_INSTANCE_VARIABLES + [ - :@_status, :@_headers, :@_params, :@_env, :@_response, :@_request, + :@_status, :@_headers, :@_params, :@_response, :@_request, :@_view_runtime, :@_stream, :@_url_options, :@_action_has_layout ] def _protected_ivars # :nodoc: diff --git a/actionpack/lib/action_controller/metal.rb b/actionpack/lib/action_controller/metal.rb index dab67452ee..dc2fcf2afa 100644 --- a/actionpack/lib/action_controller/metal.rb +++ b/actionpack/lib/action_controller/metal.rb @@ -119,7 +119,7 @@ module ActionController attr_internal_writer :env def env - @_env ||= {} + @_request.env end # Returns the last part of the controller's name, underscored, without the ending @@ -215,8 +215,7 @@ module ActionController def set_request!(request) #:nodoc: @_request = request - @_env = request.env - @_env['action_controller.instance'] = self + @_request.controller_instance = self end def to_a #:nodoc: |