mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
file.c: use rb_str_conv_enc
* file.c (rb_str_encode_ospath): simplify using rb_str_conv_enc(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
320a0dd218
commit
f375a8b40e
2 changed files with 8 additions and 9 deletions
|
@ -1,4 +1,6 @@
|
|||
Fri Jul 26 13:01:04 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
Fri Jul 26 13:01:57 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* file.c (rb_str_encode_ospath): simplify using rb_str_conv_enc().
|
||||
|
||||
* win32/file.c (fix_string_encoding): simplify with rb_str_conv_enc().
|
||||
|
||||
|
|
13
file.c
13
file.c
|
@ -229,15 +229,12 @@ rb_str_encode_ospath(VALUE path)
|
|||
{
|
||||
#ifdef _WIN32
|
||||
rb_encoding *enc = rb_enc_get(path);
|
||||
if (enc != rb_ascii8bit_encoding()) {
|
||||
rb_encoding *utf8 = rb_utf8_encoding();
|
||||
if (enc != utf8)
|
||||
path = rb_str_encode(path, rb_enc_from_encoding(utf8), 0, Qnil);
|
||||
rb_encoding *utf8 = rb_utf8_encoding();
|
||||
if (enc == rb_ascii8bit_encoding()) {
|
||||
enc = rb_filesystem_encoding();
|
||||
}
|
||||
else if (RSTRING_LEN(path) > 0) {
|
||||
path = rb_str_dup(path);
|
||||
rb_enc_associate(path, rb_filesystem_encoding());
|
||||
path = rb_str_encode(path, rb_enc_from_encoding(rb_utf8_encoding()), 0, Qnil);
|
||||
if (enc != utf8) {
|
||||
path = rb_str_conv_enc(path, enc, utf8);
|
||||
}
|
||||
#endif
|
||||
return path;
|
||||
|
|
Loading…
Reference in a new issue