aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/session_management.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller/session_management.rb')
-rw-r--r--actionpack/lib/action_controller/session_management.rb8
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