diff options
author | 2015-10-14 08:25:23 +0200 | |
---|---|---|
committer | 2015-10-14 08:25:23 +0200 | |
commit | fe7fb5dcb36265b9c635e9c1ff9937784529d631 (patch) | |
tree | d4ce87cd97bc0bd5bdbb09007fa5b3bd24f6057b /dev-ruby/actionview/files | |
parent | sys-libs/ncurses: put headers into ${EPREFIX}/usr/include on Prefix (diff) | |
download | gentoo-fe7fb5dcb36265b9c635e9c1ff9937784529d631.tar.gz gentoo-fe7fb5dcb36265b9c635e9c1ff9937784529d631.tar.bz2 gentoo-fe7fb5dcb36265b9c635e9c1ff9937784529d631.zip |
dev-ruby/actionview: fix bug with url_helper and ruby 2.0
Also backport the fix for actionview 4.2.x.
Package-Manager: portage-2.2.20.1
Diffstat (limited to 'dev-ruby/actionview/files')
-rw-r--r-- | dev-ruby/actionview/files/actionview-4.2.4-url-helper.patch | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/dev-ruby/actionview/files/actionview-4.2.4-url-helper.patch b/dev-ruby/actionview/files/actionview-4.2.4-url-helper.patch new file mode 100644 index 000000000000..fb6f28e5b4ed --- /dev/null +++ b/dev-ruby/actionview/files/actionview-4.2.4-url-helper.patch @@ -0,0 +1,43 @@ +From 253ba56f5639ffb5ebe98d01c3515604c756a96a Mon Sep 17 00:00:00 2001 +From: Takashi Kokubun <takashikkbn@gmail.com> +Date: Thu, 27 Aug 2015 21:40:11 +0900 +Subject: [PATCH] Fix mail_to to work well with Ruby 2.0 + +Ruby 2.0's ERB::Util.url_encode crashes ActiveSupport::SafeBuffer. +Related to 0789e06 +--- + actionview/lib/action_view/helpers/url_helper.rb | 2 +- + actionview/test/template/url_helper_test.rb | 7 +++++++ + 2 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/actionview/lib/action_view/helpers/url_helper.rb b/actionview/lib/action_view/helpers/url_helper.rb +index b724b9c..7485fc0 100644 +--- a/actionview/lib/action_view/helpers/url_helper.rb ++++ b/actionview/lib/action_view/helpers/url_helper.rb +@@ -463,7 +463,7 @@ def mail_to(email_address, name = nil, html_options = {}, &block) + }.compact + extras = extras.empty? ? '' : '?' + extras.join('&') + +- encoded_email_address = ERB::Util.url_encode(email_address).gsub("%40", "@") ++ encoded_email_address = ERB::Util.url_encode(email_address.to_str).gsub("%40", "@") + html_options["href"] = "mailto:#{encoded_email_address}#{extras}" + + content_tag(:a, name || email_address, html_options, &block) +diff --git a/actionview/test/template/url_helper_test.rb b/actionview/test/template/url_helper_test.rb +index 6ca937a..9e09490 100644 +--- a/actionview/test/template/url_helper_test.rb ++++ b/actionview/test/template/url_helper_test.rb +@@ -515,6 +515,13 @@ def test_mail_with_options + ) + end + ++ def test_mail_to_with_html_safe_string ++ assert_dom_equal( ++ %{<a href="mailto:david@loudthinking.com">david@loudthinking.com</a>}, ++ mail_to("david@loudthinking.com".html_safe) ++ ) ++ end ++ + def test_mail_to_with_img + assert_dom_equal %{<a href="mailto:feedback@example.com"><img src="/feedback.png" /></a>}, + mail_to('feedback@example.com', '<img src="/feedback.png" />'.html_safe) |