- Timestamp:
- 03/21/08 22:46:51 (7 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/2-0-stable/actionpack/lib/action_controller/routing.rb
r8585 r9070 307 307 308 308 # eliminate .. paths where possible 309 re = %r{ \w+[/\\]\.\.[/\\]}310 path.gsub!( %r{\w+[/\\]\.\.[/\\]}, "") while path.match(re)309 re = %r{[^/\\]+[/\\]\.\.[/\\]} 310 path.gsub!(re, "") while path.match(re) 311 311 path 312 312 end branches/2-0-stable/actionpack/test/controller/routing_test.rb
r8406 r9070 2120 2120 2121 2121 def test_normalize_unix_paths 2122 load_paths = %w(. config/../app/controllers config/../app//helpers script/../config/../vendor/rails/actionpack/lib vendor/rails/railties/builtin/rails_info app/models lib script/../config/../foo/bar/../../app/models )2122 load_paths = %w(. config/../app/controllers config/../app//helpers script/../config/../vendor/rails/actionpack/lib vendor/rails/railties/builtin/rails_info app/models lib script/../config/../foo/bar/../../app/models .foo/../.bar foo.bar/../config) 2123 2123 paths = ActionController::Routing.normalize_paths(load_paths) 2124 assert_equal %w(vendor/rails/railties/builtin/rails_info vendor/rails/actionpack/lib app/controllers app/helpers app/models lib .), paths2124 assert_equal %w(vendor/rails/railties/builtin/rails_info vendor/rails/actionpack/lib app/controllers app/helpers app/models config .bar lib .), paths 2125 2125 end 2126 2126 2127 2127 def test_normalize_windows_paths 2128 load_paths = %w(. config\\..\\app\\controllers config\\..\\app\\\\helpers script\\..\\config\\..\\vendor\\rails\\actionpack\\lib vendor\\rails\\railties\\builtin\\rails_info app\\models lib script\\..\\config\\..\\foo\\bar\\..\\..\\app\\models )2128 load_paths = %w(. config\\..\\app\\controllers config\\..\\app\\\\helpers script\\..\\config\\..\\vendor\\rails\\actionpack\\lib vendor\\rails\\railties\\builtin\\rails_info app\\models lib script\\..\\config\\..\\foo\\bar\\..\\..\\app\\models .foo\\..\\.bar foo.bar\\..\\config) 2129 2129 paths = ActionController::Routing.normalize_paths(load_paths) 2130 assert_equal %w(vendor\\rails\\railties\\builtin\\rails_info vendor\\rails\\actionpack\\lib app\\controllers app\\helpers app\\models lib .), paths2130 assert_equal %w(vendor\\rails\\railties\\builtin\\rails_info vendor\\rails\\actionpack\\lib app\\controllers app\\helpers app\\models config .bar lib .), paths 2131 2131 end 2132 2132