Commit 8265d43d authored by Robert Schilling's avatar Robert Schilling

Force of markup output to be the input encoding

parent e794b561
...@@ -221,7 +221,8 @@ module ApplicationHelper ...@@ -221,7 +221,8 @@ module ApplicationHelper
end end
def render_markup(file_name, file_content) def render_markup(file_name, file_content)
GitHub::Markup.render(file_name, file_content).html_safe GitHub::Markup.render(file_name, file_content).
force_encoding(file_content.encoding).html_safe
rescue RuntimeError rescue RuntimeError
simple_format(file_content) simple_format(file_content)
end end
......
...@@ -217,4 +217,13 @@ describe ApplicationHelper do ...@@ -217,4 +217,13 @@ describe ApplicationHelper do
).to eq("<a href=\"http://www.example.com\" rel=\"noreferrer nofollow\">Example</a>") ).to eq("<a href=\"http://www.example.com\" rel=\"noreferrer nofollow\">Example</a>")
end end
end end
describe 'markup_render' do
let(:content) { 'Noël' }
it 'should preserve encoding' do
content.encoding.name.should == 'UTF-8'
expect(render_markup('foo.rst', content).encoding.name).to eq('UTF-8')
end
end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment