aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-01-26 00:18:50 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-01-26 00:18:50 +0000
commitdf17bd4313558b5ff79c48969dec2d30584f3091 (patch)
treede1755b4e93ee6142ee1aa233b83f1921e50f817
parent2160c40fb2ef40e8a7ad593239fac3558e2639f1 (diff)
downloadruby-df17bd4313558b5ff79c48969dec2d30584f3091.tar.gz
* string.c (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when
empty string (len == 0). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--string.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 6b1711f675..c6ebb49a49 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Jan 26 09:17:13 2008 NARUSE, Yui <naruse@ruby-lang.org>
+
+ * string.c (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when
+ empty string (len == 0).
+
Sat Jan 26 03:41:53 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* parse.y (parser_initialize): set default script encoding as US-ASCII.
diff --git a/string.c b/string.c
index 684f88025a..94c9197879 100644
--- a/string.c
+++ b/string.c
@@ -278,7 +278,7 @@ str_new(VALUE klass, const char *ptr, long len)
if (ptr) {
memcpy(RSTRING_PTR(str), ptr, len);
}
- else {
+ if (len == 0) {
ENCODING_CODERANGE_SET(str, rb_usascii_encindex(), ENC_CODERANGE_7BIT);
}
STR_SET_LEN(str, len);