aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch/routing/mapper.rb
diff options
context:
space:
mode:
authorJoshua Peek <josh@joshpeek.com>2009-10-24 18:08:54 -0500
committerJoshua Peek <josh@joshpeek.com>2009-10-24 18:08:54 -0500
commita840c8afbf4e30b7bd9979e8cd70192c65be7a43 (patch)
tree82ca10172b498a604c051576f51e113eefe9a574 /actionpack/lib/action_dispatch/routing/mapper.rb
parenta0049a6b429c6de46537cc31bf7b3ca48b4c1b2c (diff)
downloadrails-a840c8afbf4e30b7bd9979e8cd70192c65be7a43.tar.gz
rails-a840c8afbf4e30b7bd9979e8cd70192c65be7a43.tar.bz2
rails-a840c8afbf4e30b7bd9979e8cd70192c65be7a43.zip
Restore `rake routes` [#3402 state:resolved]
Diffstat (limited to 'actionpack/lib/action_dispatch/routing/mapper.rb')
-rw-r--r--actionpack/lib/action_dispatch/routing/mapper.rb8
1 files changed, 5 insertions, 3 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb
index ab4193266a..d6d822842b 100644
--- a/actionpack/lib/action_dispatch/routing/mapper.rb
+++ b/actionpack/lib/action_dispatch/routing/mapper.rb
@@ -252,9 +252,11 @@ module ActionDispatch
constraints = (@scope[:constraints] || {}).merge(constraints)
options.each { |k, v| constraints[k] = v if v.is_a?(Regexp) }
- conditions[:path_info] = Rack::Mount::Strexp.compile(path, constraints, %w( / . ? ))
+ conditions[:path_info] = path
+ requirements = constraints.dup
- segment_keys = Rack::Mount::RegexpWithNamedGroups.new(conditions[:path_info]).names
+ path_regexp = Rack::Mount::Strexp.compile(path, constraints, SEPARATORS)
+ segment_keys = Rack::Mount::RegexpWithNamedGroups.new(path_regexp).names
constraints.reject! { |k, v| segment_keys.include?(k.to_s) }
conditions.merge!(constraints)
@@ -286,7 +288,7 @@ module ActionDispatch
end
app = Constraints.new(app, blocks) if blocks.any?
- @set.add_route(app, conditions, defaults, options[:as])
+ @set.add_route(app, conditions, requirements, defaults, options[:as])
self
end