summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/plugins/rfpdf/lib/tcpdf.rb2
-rw-r--r--test/functional/issues_controller_test.rb16
2 files changed, 18 insertions, 0 deletions
diff --git a/lib/plugins/rfpdf/lib/tcpdf.rb b/lib/plugins/rfpdf/lib/tcpdf.rb
index d754eb891..781fbcfc0 100644
--- a/lib/plugins/rfpdf/lib/tcpdf.rb
+++ b/lib/plugins/rfpdf/lib/tcpdf.rb
@@ -1,3 +1,5 @@
+# encoding: ascii-8bit
+
#============================================================+
# File name : tcpdf.rb
# Begin : 2002-08-03
diff --git a/test/functional/issues_controller_test.rb b/test/functional/issues_controller_test.rb
index 4acc9fdd6..2d855b2c0 100644
--- a/test/functional/issues_controller_test.rb
+++ b/test/functional/issues_controller_test.rb
@@ -1395,6 +1395,22 @@ class IssuesControllerTest < ActionController::TestCase
assert_not_nil assigns(:issue)
end
+ def test_export_to_pdf_with_utf8_u_fffd
+ # U+FFFD
+ s = "\xef\xbf\xbd"
+ s.force_encoding('UTF-8') if s.respond_to?(:force_encoding)
+ issue = Issue.generate!(:subject => s)
+ ["en", "zh", "zh-TW", "ja", "ko"].each do |lang|
+ with_settings :default_language => lang do
+ get :show, :id => issue.id, :format => 'pdf'
+ assert_response :success
+ assert_equal 'application/pdf', @response.content_type
+ assert @response.body.starts_with?('%PDF')
+ assert_not_nil assigns(:issue)
+ end
+ end
+ end
+
def test_show_export_to_pdf_with_ancestors
issue = Issue.generate!(:project_id => 1, :author_id => 2, :tracker_id => 1, :subject => 'child', :parent_issue_id => 1)