diff options
author | Sebastian A. Espindola <sespindola@gmail.com> | 2010-07-25 03:37:36 -0300 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-07-25 16:33:04 +0200 |
commit | 8d5b792e7dadf8b2f64b75b6fee51d15fde70699 (patch) | |
tree | bf7da2be389fe3bb4f70637c40aab6823f44633b | |
parent | 749948a264ded0aebd77ead087be15d8d5a51ea0 (diff) | |
download | rails-8d5b792e7dadf8b2f64b75b6fee51d15fde70699.tar.gz rails-8d5b792e7dadf8b2f64b75b6fee51d15fde70699.tar.bz2 rails-8d5b792e7dadf8b2f64b75b6fee51d15fde70699.zip |
Fixed output_buffer encoding problem [#5179]
Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
Signed-off-by: José Valim <jose.valim@gmail.com>
-rw-r--r-- | actionpack/lib/action_view/helpers/capture_helper.rb | 2 | ||||
-rw-r--r-- | actionpack/test/template/javascript_helper_test.rb | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/actionpack/lib/action_view/helpers/capture_helper.rb b/actionpack/lib/action_view/helpers/capture_helper.rb index f9105ca364..89e95e8694 100644 --- a/actionpack/lib/action_view/helpers/capture_helper.rb +++ b/actionpack/lib/action_view/helpers/capture_helper.rb @@ -165,7 +165,7 @@ module ActionView def with_output_buffer(buf = nil) #:nodoc: unless buf buf = ActionView::OutputBuffer.new - buf.force_encoding(output_buffer.encoding) if output_buffer && buf.respond_to?(:force_encoding) + buf.force_encoding(output_buffer.encoding) if output_buffer.respond_to?(:encoding) && buf.respond_to?(:force_encoding) end self.output_buffer, old_buffer = buf, output_buffer yield diff --git a/actionpack/test/template/javascript_helper_test.rb b/actionpack/test/template/javascript_helper_test.rb index c5c2a6b952..eccb706501 100644 --- a/actionpack/test/template/javascript_helper_test.rb +++ b/actionpack/test/template/javascript_helper_test.rb @@ -89,6 +89,15 @@ class JavaScriptHelperTest < ActionView::TestCase link_to_function("Greeting", "alert('Hello world!')", :href => 'http://example.com/') end + def test_link_to_function_with_inner_block + html = link_to_function("Greet me!") do |page| + content_tag :h1 do + 'Hi' + end + end + end + + def test_javascript_tag self.output_buffer = 'foo' |