summaryrefslogtreecommitdiff
path: root/encoding.c
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-05-31 05:46:58 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-05-31 05:46:58 +0000
commitd13e191d2593093f3c34a2cb6778d8676ca54d6f (patch)
treebb8d4ed0d27c8b5bdfeea2e590dabfe80c9dc897 /encoding.c
parentb5cd43c998038156ecf5fc28e5138b7f88b9aafe (diff)
* encoding.c (rb_enc_unicode_p): check the encoding is Unicode
or not by the name; not function's pointer. [ruby-dev:41479] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'encoding.c')
-rw-r--r--encoding.c3
1 files changed, 2 insertions, 1 deletions
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 *