From 847f738cfd8acf5db065cd9bb1ca3d47a7676fa3 Mon Sep 17 00:00:00 2001 From: Jamis Buck Date: Tue, 12 Jul 2005 16:16:13 +0000 Subject: Make Request#subdomains handle "foo.foo.com" correctly git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1817 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/CHANGELOG | 4 ++++ actionpack/lib/action_controller/request.rb | 2 +- actionpack/test/controller/request_test.rb | 3 +++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index da22956572..46ef1d4212 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,3 +1,7 @@ +*SVN* + +* Fixed Request#subdomains to handle "foo.foo.com" correctly + *1.9.1* (11 July, 2005) * Fixed that auto_complete_for didn't force the input string to lower case even as the db comparison was diff --git a/actionpack/lib/action_controller/request.rb b/actionpack/lib/action_controller/request.rb index 7a8fe49d0f..c41146f56a 100755 --- a/actionpack/lib/action_controller/request.rb +++ b/actionpack/lib/action_controller/request.rb @@ -116,7 +116,7 @@ module ActionController # in "www.rubyonrails.co.uk". def subdomains(tld_length = 1) parts = host.split('.') - parts - parts.last(1 + tld_length) + parts[0..-(tld_length+2)] end # Receive the raw post data. diff --git a/actionpack/test/controller/request_test.rb b/actionpack/test/controller/request_test.rb index 8980ac7520..8b079df5dd 100644 --- a/actionpack/test/controller/request_test.rb +++ b/actionpack/test/controller/request_test.rb @@ -55,6 +55,9 @@ class RequestTest < Test::Unit::TestCase @request.host = "dev.www.rubyonrails.co.uk" assert_equal %w( dev www ), @request.subdomains(2) + + @request.host = "foobar.foobar.com" + assert_equal %w( foobar ), @request.subdomains end def test_port_string -- cgit v1.2.3