From e39d7a0ca8d9dcadafc508481ee5831bd1e41cf6 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sun, 20 Nov 2011 09:32:42 +0000 Subject: [PATCH] Fixed: TMail 1.2.7 malforms To header when number of recipients more then 8 (#8751). git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7863 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- config/initializers/10-patches.rb | 11 +++++++++-- test/unit/mailer_test.rb | 8 ++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/config/initializers/10-patches.rb b/config/initializers/10-patches.rb index f409f6611..f525e5946 100644 --- a/config/initializers/10-patches.rb +++ b/config/initializers/10-patches.rb @@ -86,14 +86,21 @@ end ActionMailer::Base.send :include, AsynchronousMailer -# TMail::Unquoter.convert_to_with_fallback_on_iso_8859_1 introduced in TMail 1.2.7 -# triggers a test failure in test_add_issue_with_japanese_keywords(MailHandlerTest) module TMail + # TMail::Unquoter.convert_to_with_fallback_on_iso_8859_1 introduced in TMail 1.2.7 + # triggers a test failure in test_add_issue_with_japanese_keywords(MailHandlerTest) class Unquoter class << self alias_method :convert_to, :convert_to_without_fallback_on_iso_8859_1 end end + + # Patch for TMail 1.2.7. See http://www.redmine.org/issues/8751 + class Encoder + def puts_meta(str) + add_text str + end + end end module ActionController diff --git a/test/unit/mailer_test.rb b/test/unit/mailer_test.rb index c819d272f..2a6e9b758 100644 --- a/test/unit/mailer_test.rb +++ b/test/unit/mailer_test.rb @@ -472,6 +472,14 @@ class MailerTest < ActiveSupport::TestCase # should restore perform_deliveries assert ActionMailer::Base.perform_deliveries end + + def test_tmail_to_header_field_should_not_include_blank_lines + mail = TMail::Mail.new + mail.to = ["a.user@example.com", "v.user2@example.com", "e.smith@example.com", "info@example.com", "v.pupkin@example.com", + "b.user@example.com", "w.user2@example.com", "f.smith@example.com", "info2@example.com", "w.pupkin@example.com"] + + assert !mail.encoded.strip.split("\r\n").detect(&:blank?), "#{mail.encoded} malformed" + end context "layout" do should "include the emails_header" do -- 2.39.5