summaryrefslogtreecommitdiff
path: root/lib/erb.rb
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-01-29 02:14:36 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-01-29 02:14:36 +0000
commitc55ad90a6ec114014ed7a4188ecc1063a48a7127 (patch)
tree9abe3a8e274fc5acfb8b3bb0090ca70a5cb9cf44 /lib/erb.rb
parent1c3a3f47dcbe199903a45539d5246f6ef69b5d25 (diff)
erb.rb: frozen-string-literal safe
* lib/erb.rb (ERB#set_eoutvar): explicitly make mutable string as a buffer to make ERB work with --enable-frozen-string-literal. [ruby-core:73561] [Bug #12031] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/erb.rb')
-rw-r--r--lib/erb.rb6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/erb.rb b/lib/erb.rb
index 5223a280ad..2e9fad98b4 100644
--- a/lib/erb.rb
+++ b/lib/erb.rb
@@ -280,7 +280,7 @@ class ERB
# ERB#src:
#
# compiler = ERB::Compiler.new('<>')
- # compiler.pre_cmd = ["_erbout=''"]
+ # compiler.pre_cmd = ["_erbout=String.new"]
# compiler.put_cmd = "_erbout.concat"
# compiler.insert_cmd = "_erbout.concat"
# compiler.post_cmd = ["_erbout"]
@@ -291,7 +291,7 @@ class ERB
# <i>Generates</i>:
#
# #coding:UTF-8
- # _erbout=''; _erbout.concat "Got "; _erbout.concat(( obj ).to_s); _erbout.concat "!\n"; _erbout
+ # _erbout=String.new; _erbout.concat "Got "; _erbout.concat(( obj ).to_s); _erbout.concat "!\n"; _erbout
#
# By default the output is sent to the print method. For example:
#
@@ -860,7 +860,7 @@ class ERB
def set_eoutvar(compiler, eoutvar = '_erbout')
compiler.put_cmd = "#{eoutvar}.concat"
compiler.insert_cmd = "#{eoutvar}.concat"
- compiler.pre_cmd = ["#{eoutvar} = ''"]
+ compiler.pre_cmd = ["#{eoutvar} = String.new"]
compiler.post_cmd = ["#{eoutvar}.force_encoding(__ENCODING__)"]
end