diff options
Diffstat (limited to 'lib/erb.rb')
-rw-r--r-- | lib/erb.rb | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/erb.rb b/lib/erb.rb index 72da7cde98..215a3f516f 100644 --- a/lib/erb.rb +++ b/lib/erb.rb @@ -864,10 +864,13 @@ class ERB # def result(b=new_toplevel) if @safe_level - proc { + proc do + prev_safe_level = $SAFE $SAFE = @safe_level eval(@src, b, (@filename || '(erb)'), @lineno) - }.call + ensure + $SAFE = prev_safe_level + end.call else eval(@src, b, (@filename || '(erb)'), @lineno) end |