From cefeb0719c5dc68f6666289de646043bdec82c63 Mon Sep 17 00:00:00 2001 From: yugui Date: Wed, 20 May 2009 12:16:23 +0000 Subject: * rb_enc_get_index: allows an arbitrary RData as the argument but not only what points a rb_encoding. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@23501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- encoding.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'encoding.c') diff --git a/encoding.c b/encoding.c index 4ef45cd65..574193a96 100644 --- a/encoding.c +++ b/encoding.c @@ -566,6 +566,7 @@ rb_enc_get_index(VALUE obj) VALUE tmp; switch (BUILTIN_TYPE(obj)) { +as_default: default: case T_STRING: case T_REGEXP: @@ -586,6 +587,9 @@ rb_enc_get_index(VALUE obj) if (RDATA(obj)->dmark == enc_mark) { i = enc_check_encoding(obj); } + else { + goto as_default; + } break; } return i; -- cgit