diff options
author | Mikel Lindsaar <raasdnil@gmail.com> | 2010-02-02 10:51:19 +1100 |
---|---|---|
committer | Mikel Lindsaar <raasdnil@gmail.com> | 2010-02-02 10:51:19 +1100 |
commit | d1eed079e1338249aa3b2881d07029ac4e71f4ed (patch) | |
tree | 18088ca9388e1b7bd27fffea8cb41fa52b618c34 /actionpack/lib/action_view/template | |
parent | ddf2b4add33d5e54c5f5e7adacadbb50d3fa7b52 (diff) | |
parent | b9edb0c60c11025311fb06f2e60b3354f1b6cb09 (diff) | |
download | rails-d1eed079e1338249aa3b2881d07029ac4e71f4ed.tar.gz rails-d1eed079e1338249aa3b2881d07029ac4e71f4ed.tar.bz2 rails-d1eed079e1338249aa3b2881d07029ac4e71f4ed.zip |
Merge branch 'master' of git://github.com/rails/rails
Diffstat (limited to 'actionpack/lib/action_view/template')
-rw-r--r-- | actionpack/lib/action_view/template/handler.rb | 4 | ||||
-rw-r--r-- | actionpack/lib/action_view/template/handlers/erb.rb | 8 | ||||
-rw-r--r-- | actionpack/lib/action_view/template/resolver.rb | 3 |
3 files changed, 10 insertions, 5 deletions
diff --git a/actionpack/lib/action_view/template/handler.rb b/actionpack/lib/action_view/template/handler.rb index 221d1bd5c5..8ecc911519 100644 --- a/actionpack/lib/action_view/template/handler.rb +++ b/actionpack/lib/action_view/template/handler.rb @@ -1,5 +1,5 @@ -require "active_support/core_ext/class/inheritable_attributes" require "action_dispatch/http/mime_type" +require 'active_support/core_ext/class/attribute' # Legacy TemplateHandler stub module ActionView @@ -23,7 +23,7 @@ module ActionView end class Template::Handler - extlib_inheritable_accessor :default_format + class_attribute :default_format self.default_format = Mime::HTML def self.call(template) diff --git a/actionpack/lib/action_view/template/handlers/erb.rb b/actionpack/lib/action_view/template/handlers/erb.rb index 93a4315108..4573a440d1 100644 --- a/actionpack/lib/action_view/template/handlers/erb.rb +++ b/actionpack/lib/action_view/template/handlers/erb.rb @@ -6,7 +6,7 @@ module ActionView module Template::Handlers class Erubis < ::Erubis::Eruby def add_preamble(src) - src << "@output_buffer = ActionView::SafeBuffer.new;" + src << "@output_buffer = ActiveSupport::SafeBuffer.new;" end def add_text(src, text) @@ -15,7 +15,11 @@ module ActionView end def add_expr_literal(src, code) - src << '@output_buffer << ((' << code << ').to_s);' + if code =~ /\s*raw\s+(.*)/ + src << "@output_buffer.safe_concat((" << $1 << ").to_s);" + else + src << '@output_buffer << ((' << code << ').to_s);' + end end def add_expr_escaped(src, code) diff --git a/actionpack/lib/action_view/template/resolver.rb b/actionpack/lib/action_view/template/resolver.rb index af5d6f6d18..6878067f7c 100644 --- a/actionpack/lib/action_view/template/resolver.rb +++ b/actionpack/lib/action_view/template/resolver.rb @@ -1,5 +1,6 @@ require "pathname" require "active_support/core_ext/class" +require "active_support/core_ext/array/wrap" require "action_view/template" module ActionView @@ -11,7 +12,7 @@ module ActionView def self.register_detail(name, options = {}) registered_details[name] = lambda do |val| - val ||= yield + val = Array.wrap(val || yield) val |= [nil] unless options[:allow_nil] == false val end |