Permalink
Browse files

Ruby 1.9: Strip encoding from ERB source since you can not change cha…

…racter encoding during a method
  • Loading branch information...
1 parent c609be4 commit 108ed4a5660d4ebdc52563250463c762e3f27988 @josh josh committed Jul 19, 2008
Showing with 5 additions and 2 deletions.
  1. +5 −2 actionpack/lib/action_view/template_handlers/erb.rb
@@ -48,8 +48,11 @@ class ERB < TemplateHandler
self.erb_trim_mode = '-'
def compile(template)
- src = ::ERB.new(template.source, nil, erb_trim_mode, '@output_buffer').src
- "__in_erb_template=true;#{src}"
+ src = ::ERB.new("<% __in_erb_template=true %>#{template.source}", nil, erb_trim_mode, '@output_buffer').src
+
+ # Ruby 1.9 prepends an encoding to the source. However this is
+ # useless because you can only set an encoding on the first line
+ RUBY_VERSION >= '1.9' ? src.sub(/\A#coding:.*\n/, '') : src
end
end
end

0 comments on commit 108ed4a

Please sign in to comment.