diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-24 07:00:43 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-24 07:00:43 +0000 |
commit | 922048adee910c0e57ca3f7a897670a3d2186fb8 (patch) | |
tree | ccca3bde8a93ece543dcaf9ee3ed2785fbe7ac30 /string.c | |
parent | 022ddc7078674bcc88a81e106aca9424725b52c0 (diff) | |
download | ruby-922048adee910c0e57ca3f7a897670a3d2186fb8.tar.gz |
* string.c (rb_str_rstrip_bang): removing mixed spaces and nuls at
the end of strings. [ruby-dev:36497]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'string.c')
-rw-r--r-- | string.c | 7 |
1 files changed, 2 insertions, 5 deletions
@@ -5861,11 +5861,8 @@ rb_str_rstrip_bang(VALUE str) t = e = RSTRING_END(str); if (single_byte_optimizable(str)) { - /* remove trailing '\0's */ - while (s < t && t[-1] == '\0') t--; - - /* remove trailing spaces */ - while (s < t && rb_enc_isspace(*(t-1), enc)) t--; + /* remove trailing spaces or '\0's */ + while (s < t && (t[-1] == '\0' || rb_enc_isspace(*(t-1), enc))) t--; } else { char *tp; |