Changeset 9069
- Timestamp:
- 03/21/08 22:44:04 (4 months ago)
- Files:
-
- trunk/actionpack/lib/action_controller/routing.rb (modified) (1 diff)
- trunk/actionpack/test/controller/routing_test.rb (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/actionpack/lib/action_controller/routing.rb
r8738 r9069 273 273 274 274 # eliminate .. paths where possible 275 re = %r{ \w+[/\\]\.\.[/\\]}276 path.gsub!( %r{\w+[/\\]\.\.[/\\]}, "") while path.match(re)275 re = %r{[^/\\]+[/\\]\.\.[/\\]} 276 path.gsub!(re, "") while path.match(re) 277 277 path 278 278 end trunk/actionpack/test/controller/routing_test.rb
r8738 r9069 2171 2171 2172 2172 def test_normalize_unix_paths 2173 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 )2173 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) 2174 2174 paths = ActionController::Routing.normalize_paths(load_paths) 2175 assert_equal %w(vendor/rails/railties/builtin/rails_info vendor/rails/actionpack/lib app/controllers app/helpers app/models lib .), paths2175 assert_equal %w(vendor/rails/railties/builtin/rails_info vendor/rails/actionpack/lib app/controllers app/helpers app/models config .bar lib .), paths 2176 2176 end 2177 2177 2178 2178 def test_normalize_windows_paths 2179 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 )2179 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) 2180 2180 paths = ActionController::Routing.normalize_paths(load_paths) 2181 assert_equal %w(vendor\\rails\\railties\\builtin\\rails_info vendor\\rails\\actionpack\\lib app\\controllers app\\helpers app\\models lib .), paths2181 assert_equal %w(vendor\\rails\\railties\\builtin\\rails_info vendor\\rails\\actionpack\\lib app\\controllers app\\helpers app\\models config .bar lib .), paths 2182 2182 end 2183 2183