method
normalize_paths
v2.0.3 -
Show latest stable
-
0 notes -
Class: ActionController::Routing
- 1.0.0
- 1.1.6
- 1.2.6 (0)
- 2.0.3 (0)
- 2.1.0 (38)
- 2.2.1 (0)
- 2.3.8 (0)
- 3.0.0
- 3.0.9
- 3.1.0
- 3.2.1
- 3.2.8
- 3.2.13
- 4.0.2
- 4.1.8
- 4.2.1
- 4.2.7
- 4.2.9
- 5.0.0.1
- 5.1.7
- 5.2.3
- 6.0.0
- 6.1.3.1
- 6.1.7.7
- 7.0.0
- 7.1.3.2
- 7.1.3.4
- What's this?
normalize_paths(paths)
public
Hide source
# File actionpack/lib/action_controller/routing.rb, line 300 def normalize_paths(paths) # do the hokey-pokey of path normalization... paths = paths.collect do |path| path = path. gsub("//", "/"). # replace double / chars with a single gsub("\\\\", "\\"). # replace double \ chars with a single gsub(%r{(.)[\\/]$}, '\1') # drop final / or \ if path ends with it # eliminate .. paths where possible re = %r{[^/\\]+[/\\]\.\.[/\\]} path.gsub!(re, "") while path.match(re) path end # start with longest path, first paths = paths.uniq.sort_by { |path| - path.length } end