diff options
Diffstat (limited to 'actionpack/lib/action_controller/session_management.rb')
-rw-r--r-- | actionpack/lib/action_controller/session_management.rb | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/actionpack/lib/action_controller/session_management.rb b/actionpack/lib/action_controller/session_management.rb index 827f8ebe46..950f48abf4 100644 --- a/actionpack/lib/action_controller/session_management.rb +++ b/actionpack/lib/action_controller/session_management.rb @@ -11,7 +11,6 @@ module ActionController #:nodoc: base.extend(ClassMethods) base.send(:alias_method, :process_without_session_management_support, :process) base.send(:alias_method, :process, :process_with_session_management_support) - base.after_filter(:clear_persistent_model_associations) end module ClassMethods @@ -111,8 +110,11 @@ module ActionController #:nodoc: end def process_with_session_management_support(request, response, method = :perform_action, *arguments) #:nodoc: - action = request.parameters["action"] || "index" - request.session_options = self.class.session_options_for(request, action) + unless @parent_controller + # only determine session options if this isn't a controller created for component request processing + action = request.parameters["action"] || "index" + request.session_options = self.class.session_options_for(request, action) + end process_without_session_management_support(request, response, method, *arguments) end |