diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2016-02-10 17:41:34 +0100 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2016-02-10 17:41:34 +0100 |
commit | b07970883d87e310696b0e7d8653cfdfc5fd4e9c (patch) | |
tree | 57ae348ac46d333216b1e503ce9b9f4e9dd98ac1 /actionview | |
parent | 437a7a406c408f106a6ae5d89a5d012106a74e39 (diff) | |
parent | 3f93888808442c014eab31ba31151daeafa76f1f (diff) | |
download | rails-b07970883d87e310696b0e7d8653cfdfc5fd4e9c.tar.gz rails-b07970883d87e310696b0e7d8653cfdfc5fd4e9c.tar.bz2 rails-b07970883d87e310696b0e7d8653cfdfc5fd4e9c.zip |
Merge pull request #22772 from gsamokovarov/nack-template-error
Fix edge case with ActionView::Template::Error reraise
Diffstat (limited to 'actionview')
-rw-r--r-- | actionview/lib/action_view/template/error.rb | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/actionview/lib/action_view/template/error.rb b/actionview/lib/action_view/template/error.rb index b03b197cb5..ccee785d3e 100644 --- a/actionview/lib/action_view/template/error.rb +++ b/actionview/lib/action_view/template/error.rb @@ -59,6 +59,9 @@ module ActionView class Error < ActionViewError #:nodoc: SOURCE_CODE_RADIUS = 3 + # Override to prevent #cause resetting during re-raise. + attr_reader :cause + def initialize(template, original_exception = nil) if original_exception ActiveSupport::Deprecation.warn("Passing #original_exception is deprecated and has no effect. " \ @@ -67,6 +70,7 @@ module ActionView super($!.message) set_backtrace($!.backtrace) + @cause = $! @template, @sub_templates = template, nil end |