summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--string.c1
2 files changed, 6 insertions, 0 deletions
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 <naruse@ruby-lang.org>
+
+ * 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 <naruse@ruby-lang.org>
* 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);