diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-02-15 18:48:27 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-02-15 18:48:27 +0000 |
commit | 0831222a9135e0074b71d8f3890f94fdc78d61dc (patch) | |
tree | e76d7c76d7b7b55a0ac6afd72990e21a789d81cc /encoding.c | |
parent | 0040ed402063ef2c846bae09027d7ca4ea2215db (diff) | |
download | ruby-0831222a9135e0074b71d8f3890f94fdc78d61dc.tar.gz |
* encoding.c (rb_enc_nth): moved to string.c.
* string.c (rb_enc_nth): moved from string.c. use search_nonascii
for ASCII compatible string.
(str_nth): wrong optimization removed to fix
"a".force_encoding("EUC-JP").slice!(0,10) returns
"a\x00\x00\x00\x00\x00\x00\x00\x00\x00"
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'encoding.c')
-rw-r--r-- | encoding.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/encoding.c b/encoding.c index 77d3f996d7..5a8369b6f3 100644 --- a/encoding.c +++ b/encoding.c @@ -720,28 +720,6 @@ rb_obj_encoding(VALUE obj) return rb_enc_from_encoding(enc); } - -char* -rb_enc_nth(const char *p, const char *e, int nth, rb_encoding *enc) -{ - int c; - - if (rb_enc_mbmaxlen(enc) == 1) { - p += nth; - } - else if (rb_enc_mbmaxlen(enc) == rb_enc_mbminlen(enc)) { - p += nth * rb_enc_mbmaxlen(enc); - } - else { - for (c=0; p<e && nth--; c++) { - int n = rb_enc_mbclen(p, e, enc); - - p += n; - } - } - return (char*)p; -} - long rb_enc_strlen(const char *p, const char *e, rb_encoding *enc) { |