diff options
author | knu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-04-23 00:52:17 +0000 |
---|---|---|
committer | knu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-04-23 00:52:17 +0000 |
commit | ade2ba57a2659600a5cc2987461538bebeed8f5e (patch) | |
tree | dcf3e63cd93a1c5634b0ce5d795ecf38851d310b /string.c | |
parent | 1f4e5348154cd59435fca6ac18e923130309fdd8 (diff) | |
download | ruby-ade2ba57a2659600a5cc2987461538bebeed8f5e.tar.gz |
* string.c (rb_str_inspect): NUL should not be represented as
"\0" when octal digits may follow.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'string.c')
-rw-r--r-- | string.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -4572,7 +4572,11 @@ rb_str_inspect(VALUE str) } } switch (c) { - case '\0': cc = '0'; break; + case '\0': + if (p - n > prev) str_buf_cat(result, prev, p - n - prev); + str_buf_cat(result, "\\000", 4); + prev = p; + continue; case '\n': cc = 'n'; break; case '\r': cc = 'r'; break; case '\t': cc = 't'; break; |