diff --git a/ChangeLog b/ChangeLog index 94cb74ca96..2d19f72903 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Feb 22 12:11:12 2008 NARUSE, Yui + + * string.c (rb_str_inspect): string of ascii incompatible encoding + should be escaped and returned as US-ASCII encoding. + Fri Feb 22 11:16:55 2008 NARUSE, Yui * string.c (rb_str_substr): copy encoding although empty string. diff --git a/string.c b/string.c index fbee097e06..19e8072462 100644 --- a/string.c +++ b/string.c @@ -3663,6 +3663,7 @@ rb_str_inspect(VALUE str) char *p, *pend; VALUE result = rb_str_buf_new2(""); + if (!rb_enc_asciicompat(enc)) enc = rb_usascii_encoding(); rb_enc_associate(result, enc); str_cat_char(result, '"', enc); p = RSTRING_PTR(str); pend = RSTRING_END(str);