aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorJamis Buck <jamis@37signals.com>2005-09-30 19:10:20 +0000
committerJamis Buck <jamis@37signals.com>2005-09-30 19:10:20 +0000
commit1e08d11579f0080f086a6bfea1693826a0c09c95 (patch)
tree19882f8832382c9940a3126b0a9d4ecc9a904bfb /actionpack
parent11de94748e1543065748637b083984a69350b1a6 (diff)
downloadrails-1e08d11579f0080f086a6bfea1693826a0c09c95.tar.gz
rails-1e08d11579f0080f086a6bfea1693826a0c09c95.tar.bz2
rails-1e08d11579f0080f086a6bfea1693826a0c09c95.zip
Don't prepend the asset host if the string is already a fully-qualified URL
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2430 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/CHANGELOG2
-rw-r--r--actionpack/lib/action_view/helpers/asset_tag_helper.rb3
-rw-r--r--actionpack/test/template/asset_tag_helper_test.rb10
3 files changed, 14 insertions, 1 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG
index 5e50ce97d2..b252286202 100644
--- a/actionpack/CHANGELOG
+++ b/actionpack/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Don't prepend the asset host if the string is already a fully-qualified URL
+
* Updated to script.aculo.us V1.5.0_rc2 and Prototype to V1.4.0_pre7 [Thomas Fuchs]
* Undo condition change made in [2345] to prevent normal parameters arriving as StringIO.
diff --git a/actionpack/lib/action_view/helpers/asset_tag_helper.rb b/actionpack/lib/action_view/helpers/asset_tag_helper.rb
index 23d691bb13..a79c01574b 100644
--- a/actionpack/lib/action_view/helpers/asset_tag_helper.rb
+++ b/actionpack/lib/action_view/helpers/asset_tag_helper.rb
@@ -131,7 +131,8 @@ module ActionView
source = "/#{dir}/#{source}" unless source.first == "/" || source.include?(":")
source = "#{source}.#{ext}" unless source.include?(".")
source = "#{@controller.request.relative_url_root}#{source}" unless %r{^[-a-z]+://} =~ source
- ActionController::Base.asset_host + source
+ source = ActionController::Base.asset_host + source unless source.include?(":")
+ source
end
end
end
diff --git a/actionpack/test/template/asset_tag_helper_test.rb b/actionpack/test/template/asset_tag_helper_test.rb
index d5ea05bf37..9a242c6a5a 100644
--- a/actionpack/test/template/asset_tag_helper_test.rb
+++ b/actionpack/test/template/asset_tag_helper_test.rb
@@ -196,4 +196,14 @@ class AssetTagHelperNonVhostTest < Test::Unit::TestCase
assert_nothing_raised { image_tag('') }
end
+ def test_stylesheet_with_asset_host_already_encoded
+ ActionController::Base.asset_host = "http://foo.example.com"
+ result = stylesheet_link_tag("http://bar.example.com/stylesheets/style.css")
+ assert_dom_equal(
+ %(<link href="http://bar.example.com/stylesheets/style.css" media="screen" rel="Stylesheet" type="text/css" />),
+ result)
+ ensure
+ ActionController::Base.asset_host = ""
+ end
+
end