diff --git a/ChangeLog b/ChangeLog index d6ed132049..ea694293e8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon May 31 13:44:40 2010 NARUSE, Yui + + * encoding.c (rb_enc_unicode_p): check the encoding is Unicode + or not by the name; not function's pointer. [ruby-dev:41479] + Mon May 31 04:03:43 2010 Nobuyoshi Nakada * file.c (file_expand_path): check if expanded dname encoding is diff --git a/encoding.c b/encoding.c index 83607d5103..a7950a8251 100644 --- a/encoding.c +++ b/encoding.c @@ -420,7 +420,8 @@ enc_ascii_compatible_p(VALUE enc) int rb_enc_unicode_p(rb_encoding *enc) { - return rb_utf8_encoding()->is_code_ctype == enc->is_code_ctype; + const char *name = rb_enc_name(enc); + return name[0] == 'U' && name[1] == 'T' && name[2] == 'F' && name[4] != '7'; } static const char *