diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-09-28 19:24:18 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-09-28 19:24:18 +0000 |
commit | e0af046ad04127f419b2b9696694eb2efca130fc (patch) | |
tree | 38fcb29c8741e53f7de7a44856814bb834a17692 /hash.c | |
parent | ff504d3cc96bf315b06c988c080ab47121ce3c41 (diff) | |
download | ruby-e0af046ad04127f419b2b9696694eb2efca130fc.tar.gz |
* hash.c (rb_f_getenv): use rb_filesystem_str_new_cstr
instead of rb_str_new2.
ENV['PATH'].encoding should be Filesystem Encoding
because its content is related to filesystem.
see [ruby-dev:39393]
* hash.c (env_fetch): ditto.
* string.c (rb_filesystem_str_new): defined.
* string.c (rb_filesystem_str_new_cstr): ditto.
* include/ruby/intern.h (rb_filesystem_str_new): added.
* include/ruby/intern.h (rb_filesystem_str_new_cstr): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'hash.c')
-rw-r--r-- | hash.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -1931,7 +1931,7 @@ rb_f_getenv(VALUE obj, VALUE name) env = getenv(nam); if (env) { if (ENVMATCH(nam, PATH_ENV) && !env_path_tainted(env)) { - VALUE str = rb_str_new2(env); + VALUE str = rb_filesystem_str_new_cstr(env); rb_obj_freeze(str); return str; @@ -1968,7 +1968,7 @@ env_fetch(int argc, VALUE *argv) return if_none; } if (ENVMATCH(nam, PATH_ENV) && !env_path_tainted(env)) - return rb_str_new2(env); + return rb_filesystem_str_new_cstr(env); return env_str_new2(env); } |