summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--win32/file.c11
2 files changed, 4 insertions, 11 deletions
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 <nobu@ruby-lang.org>
+Fri Jul 26 13:01:04 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * 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.