diff --git a/ChangeLog b/ChangeLog index 8e4ce09739..ad6582ac36 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,6 @@ -Fri Jul 26 13:00:24 2013 Nobuyoshi Nakada +Fri Jul 26 13:01:04 2013 Nobuyoshi Nakada + + * win32/file.c (fix_string_encoding): simplify with rb_str_conv_enc(). * win32/file.c (convert_mb_to_wchar): use bare pointer instead of VALUE, and remove useless argument. diff --git a/win32/file.c b/win32/file.c index a5aafa5e77..f7b419530f 100644 --- a/win32/file.c +++ b/win32/file.c @@ -235,16 +235,7 @@ code_page(rb_encoding *enc) return INVALID_CODE_PAGE; } -static inline VALUE -fix_string_encoding(VALUE str, rb_encoding *encoding) -{ - VALUE result, tmp; - - tmp = rb_enc_str_new(RSTRING_PTR(str), RSTRING_LEN(str), encoding); - result = rb_str_encode(tmp, rb_enc_from_encoding(rb_utf8_encoding()), 0, Qnil); - - return result; -} +#define fix_string_encoding(str, encoding) rb_str_conv_enc((str), NULL, (encoding)) /* Replace the last part of the path to long name.