aboutsummaryrefslogtreecommitdiffstats
path: root/encoding.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-12-02 08:00:56 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-12-02 08:00:56 +0000
commit369795b71b3323ff837b9ffd6fa49224bf799bea (patch)
tree4bcaba9e9ea1ce9e5cc93c8f8ee705fb9a97ef9a /encoding.c
parent630cf61b4028db303aea92ae376834bbe68dd549 (diff)
downloadruby-369795b71b3323ff837b9ffd6fa49224bf799bea.tar.gz
encoding.c: make fstring
* encoding.c (enc_name, rb_enc_name_list_i, rb_enc_aliases_enc_i): make fstring instead of making each copies. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'encoding.c')
-rw-r--r--encoding.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/encoding.c b/encoding.c
index fe720767c2..eb777c90f3 100644
--- a/encoding.c
+++ b/encoding.c
@@ -1134,7 +1134,7 @@ enc_inspect(VALUE self)
static VALUE
enc_name(VALUE self)
{
- return rb_usascii_str_new2(rb_enc_name((rb_encoding*)DATA_PTR(self)));
+ return rb_fstring_cstr(rb_enc_name((rb_encoding*)DATA_PTR(self)));
}
static int
@@ -1633,8 +1633,7 @@ static int
rb_enc_name_list_i(st_data_t name, st_data_t idx, st_data_t arg)
{
VALUE ary = (VALUE)arg;
- VALUE str = rb_usascii_str_new2((char *)name);
- OBJ_FREEZE(str);
+ VALUE str = rb_fstring_cstr((char *)name);
rb_ary_push(ary, str);
return ST_CONTINUE;
}
@@ -1676,8 +1675,7 @@ rb_enc_aliases_enc_i(st_data_t name, st_data_t orig, st_data_t arg)
if (STRCASECMP((char*)name, rb_enc_name(enc)) == 0) {
return ST_CONTINUE;
}
- str = rb_usascii_str_new2(rb_enc_name(enc));
- OBJ_FREEZE(str);
+ str = rb_fstring_cstr(rb_enc_name(enc));
rb_ary_store(ary, idx, str);
}
key = rb_usascii_str_new2((char *)name);