mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Fix WSOD when template compilation fails [Rick]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6505 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
da6f5a1cb4
commit
142b074e91
2 changed files with 8 additions and 1 deletions
|
@ -1,5 +1,7 @@
|
|||
*SVN*
|
||||
|
||||
* Fix WSOD when template compilation fails [Rick]
|
||||
|
||||
* Change ActionView template defaults. Look for templates using the request format first, such as "show.html.erb" or "show.xml.builder", before looking for the old defaults like "show.erb" or "show.builder" [Rick]
|
||||
|
||||
* Highlight helper highlights one or many terms in a single pass. [Jeremy Kemper]
|
||||
|
|
|
@ -428,6 +428,11 @@ module ActionView #:nodoc:
|
|||
@view_paths.find { |p| File.file?(File.join(p, template_file_name)) }
|
||||
end
|
||||
|
||||
# Returns the view path that the full path resides in.
|
||||
def extract_base_path_from(full_path)
|
||||
@view_paths.find { |p| full_path[0..p.size - 1] == p }
|
||||
end
|
||||
|
||||
# Determines the template's file extension, such as rhtml, rxml, or rjs.
|
||||
def find_template_extension_for(template_path, formatted_template_path = nil)
|
||||
formatted_template_path ||= "#{template_path}.#{template_format}"
|
||||
|
@ -577,7 +582,7 @@ module ActionView #:nodoc:
|
|||
logger.debug "Backtrace: #{e.backtrace.join("\n")}"
|
||||
end
|
||||
|
||||
raise TemplateError.new(find_base_path_for(file_name || template), file_name || template, @assigns, template, e)
|
||||
raise TemplateError.new(extract_base_path_from(file_name) || @view_paths.first, file_name || template, @assigns, template, e)
|
||||
end
|
||||
|
||||
@@compile_time[render_symbol] = Time.now
|
||||
|
|
Loading…
Reference in a new issue