From 74961dbbe90d60e8c892005fc92e4943abd46272 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Tue, 5 Jul 2005 09:45:30 +0000 Subject: Backed out of #1694 as it broke requests that hit the cache with wrong argument type nil (expected Module) on WEBrick git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1705 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/lib/action_controller/routing.rb | 36 ++++++++++------------------- 1 file changed, 12 insertions(+), 24 deletions(-) (limited to 'actionpack/lib/action_controller/routing.rb') diff --git a/actionpack/lib/action_controller/routing.rb b/actionpack/lib/action_controller/routing.rb index dcc3b2851b..7be27b2eea 100644 --- a/actionpack/lib/action_controller/routing.rb +++ b/actionpack/lib/action_controller/routing.rb @@ -416,33 +416,21 @@ module ActionController return (method_sources << code) end - @@recognized_route_cache = {} def recognize(request) - if recognized = @@recognized_route_cache[request.path] - controller, options = recognized - request.path_parameters = options - controller.new - else - string_path = request.path - string_path.chomp! if string_path[0] == ?/ - path = string_path.split '/' - path.shift - - hash = recognize_path(path) - recognition_failed(request) unless hash && hash['controller'] - - controller = hash['controller'] - hash['controller'] = controller.controller_path - request.path_parameters = hash - @@recognized_route_cache[request.path] = [controller, hash] - controller.new - end + string_path = request.path + string_path.chomp! if string_path[0] == ?/ + path = string_path.split '/' + path.shift + + hash = recognize_path(path) + recognition_failed(request) unless hash && hash['controller'] + + controller = hash['controller'] + hash['controller'] = controller.controller_path + request.path_parameters = hash + controller.new end alias :recognize! :recognize - - def clear_recognized_route_cache! - @@recognized_route_cache.clear - end def recognition_failed(request) raise ActionController::RoutingError, "Recognition failed for #{request.path.inspect}" -- cgit v1.2.3