diff --git a/ChangeLog b/ChangeLog index 035f25899d..1952918a3a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sun Aug 24 04:23:19 2008 NARUSE, Yui + + * encoding.c (enc_compatible_p): raise TypeError when argument is Encoding. + Sat Aug 23 23:25:47 2008 NARUSE, Yui * lib/cgi.rb (CGI#out): remove auto encoding conversion and set diff --git a/encoding.c b/encoding.c index 9002a1f17f..5e8412a026 100644 --- a/encoding.c +++ b/encoding.c @@ -876,6 +876,8 @@ enc_compatible_p(VALUE klass, VALUE str1, VALUE str2) { rb_encoding *enc; + if (enc_check_encoding(str1) > 0 || enc_check_encoding(str2) > 0) + rb_raise(rb_eTypeError, "wrong argument type Encoding (expected String)"); if (!enc_capable(str1)) return Qnil; if (!enc_capable(str2)) return Qnil; enc = rb_enc_compatible(str1, str2);