[#40298] Re: [ruby-cvs:33760] Ruby:r26545 (trunk): Wed Feb 3 10:12:09 2010 Aaron Patterson <tenderlove@ruby-lang.org> — "NARUSE, Yui" <naruse@...>
成瀬です。
2010/2/2 NARUSE, Yui <naruse@airemix.jp>:
成瀬です。
小崎です
2010年2月3日21:07 KOSAKI Motohiro <kosaki.motohiro@gmail.com>:
成瀬です。
2010年2月7日21:37 NARUSE, Yui <naruse@airemix.jp>:
> 2010年2月7日21:37 NARUSE, Yui <naruse@airemix.jp>:
2010年2月9日14:19 KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>:
金本と申します。
成瀬です。
成瀬です。
2010/2/25 NARUSE, Yui <naruse@airemix.jp>:
アーロン宛
アーロン宛です。
2010/2/26 NARUSE, Yui <naruse@airemix.jp>:
(2010/02/28 9:01), Aaron Patterson wrote:
こんばんは sheepman です。
成瀬です。
[#40317] [Bug:trunk] TCPServer#gets gets stuck — Yusuke ENDOH <mame@...>
遠藤です。
2010年2月5日0:18 Yusuke ENDOH <mame@tsg.ne.jp>:
遠藤です。
2010年2月9日22:23 Yusuke ENDOH <mame@tsg.ne.jp>:
遠藤です。
2010年2月11日17:14 Yusuke ENDOH <mame@tsg.ne.jp>:
[#40359] trunk \w match — WATANABE Tetsuya <tetsuya.watanabe@...>
渡辺哲也です。
[#40382] [Bug:trunk] rubyspec: ObjectSpace.define_finalizer doesn't call self-referencing finalizers FAILED — Yusuke ENDOH <mame@...>
なかださんかまつもとさん
遠藤です。
遠藤です。
遠藤です。
[#40384] [Bug:trunk] rubyspec: Time#+ rounds micro seconds rather than truncates FAILED — Yusuke ENDOH <mame@...>
akr さん
2010年2月11日2:58 Yusuke ENDOH <mame@tsg.ne.jp>:
遠藤です。
2010年2月11日21:58 Yusuke ENDOH <mame@tsg.ne.jp>:
[#40387] [Bug #2516] IO#reopen Compatibility (original: ) — Yusuke Endoh <redmine@...>
チケット #2516 が更新されました。 (by Yusuke Endoh)
[#40414] Re: [ruby-cvs:33873] Ruby:r26658 (trunk): * marshal.c (id2encidx): duplicated entry for encoding name. — Tanaka Akira <akr@...>
2010/2/13 <matz@ruby-lang.org>:
[#40418] [Feature #2746] ビルドする拡張ライブラリを configure 時に指定するための --with-exts オプション — Kenta Murata <redmine@...>
Feature #2746: ビルドする拡張ライブラリを configure 時に指定するための --with-exts オプション
まつもと ゆきひろです
こんにちは、なかむら(う)です。
[#40424] [Bug #2747] io.dup doesn't handle pos properly — Motohiro KOSAKI <redmine@...>
Bug #2747: io.dup doesn't handle pos properly
[#40452] [bug:trunk] Invalid read of size 4 by redefining load — Tanaka Akira <akr@...>
以下のように load 中に load を再定義すると、変なところをアクセスするのが
[#40453] [Bug #2776] can't return from lambda with outer block — _ wanabe <redmine@...>
Bug #2776: can't return from lambda with outer block
チケット #2776 が更新されました。 (by Shyouhei Urabe)
[#40461] respond_to?(<protected method name>) returns true — "Akinori MUSHA" <knu@...>
今さらかもしれませんが、 respond_to? で protected メソッドを
まつもと ゆきひろです
At Tue, 23 Feb 2010 14:09:52 +0900,
まつもと ゆきひろです
At Wed, 24 Feb 2010 00:55:39 +0900,
まつもと ゆきひろです
At Wed, 24 Feb 2010 01:25:45 +0900,
遠藤です。
まつもと ゆきひろです
[#40467] Re: [ruby-cvs:33954] Ruby:r26739 (trunk): * ext/openssl/ossl_digest.c (GetDigestPtr): Allow to pass the — "NARUSE, Yui" <naruse@...>
成瀬です。
At Wed, 24 Feb 2010 01:28:24 +0900,
(2010/02/24 1:57), Akinori MUSHA wrote:
At Wed, 24 Feb 2010 02:07:00 +0900,
2010/2/24 Akinori MUSHA <knu@idaemons.org>:
At Wed, 24 Feb 2010 06:06:13 +0900,
MjAxMC8yLzI0IEFraW5vcmkgTVVTSEEgPGtudUBpZGFlbW9ucy5vcmc+Ogo+PiAbJEIwRTlmPWhN
2010/2/25 NAKAMURA, Hiroshi <nakahiro@gmail.com>:
長いことほとんど Ruby に時間が割けておらずすみません。
2010/5/20 Akinori MUSHA <knu@idaemons.org>:
成瀬です。
At Thu, 3 Jun 2010 17:02:32 +0900,
成瀬です。
At Thu, 3 Jun 2010 21:00:29 +0900,
2010/2/24 Akinori MUSHA <knu@idaemons.org>:
成瀬です。
>> 成瀬さんはじめ、ruby/opensslメンテナ探しに影響を受けそうなみなさん、どうでしょうか。@evanphxがメンテナ立候補ということだったと思うので、その線で進めるならruby-coreかなと思います。
2010/2/28 KOSAKI Motohiro <kosaki.motohiro@gmail.com>:
[#40487] [Bug #2792] String#to_f on Ruby-1.8.6-p399 — Masao Mutoh <redmine@...>
Bug #2792: String#to_f on Ruby-1.8.6-p399
[#40493] [Bug:trunk] readpartial after ungetc fails with text mode — Yusuke ENDOH <mame@...>
遠藤です。
2010年2月26日19:34 Yusuke ENDOH <mame@tsg.ne.jp>:
遠藤です。
[#40506] [Bug:trunk] IO behaviors on mingw — Yusuke ENDOH <mame@...>
akr さん
[#40514] [Bug:trunk] Dir.[] returns unmatched path — Yusuke ENDOH <mame@...>
遠藤です。
こんにちは、なかむら(う)です。
遠藤です。
[ruby-dev:40320] Re: [Bug:trunk] rubyspec: StringIO#ungetc when passed [char] pads with \000 when the current position is after the end ERROR
遠藤です。
2010年1月31日19:21 Yusuke ENDOH <mame@tsg.ne.jp>:
> stringio に関して、バッファ終端より先に pos を合わせた状態で
> StringIO#ungetc を呼んだ時の挙動が 1.8 と 1.9 で違います。
>
>
> # 1.8 では間が \0 で埋められる
> $ ruby18 -rstringio -e '
> io = StringIO.new("1234")
> io.pos = 15
> io.ungetc(?A)
> p io.string
> '
> "1234\000\000\000\000\000\000\000\000\000\000A"
>
>
> # 1.9 では例外になる
> $ ./ruby -rstringio -e '
> io = StringIO.new("1234")
> io.pos = 15
> io.ungetc(?A)
> p io.string
> '
> -e:4:in `ungetc': index 14 out of string (IndexError)
> from -e:4:in `<main>'
>
>
> r13261 が原因のようです。この挙動の変更を狙ったものではない
> ような気がしますが、いかがでしょうか。
成瀬さんの監修のもと、パッチを書いてみました。
反対がなければコミットしてしまいます。
diff --git a/ext/stringio/stringio.c b/ext/stringio/stringio.c
index f193c6e..faf974e 100644
--- a/ext/stringio/stringio.c
+++ b/ext/stringio/stringio.c
@@ -725,17 +725,26 @@ strio_ungetc(VALUE self, VALUE c)
c = rb_str_conv_enc(c, enc2, enc);
}
}
- /* get logical position */
- lpos = 0; p = RSTRING_PTR(ptr->string); pend = p + ptr->pos;
- for (;;) {
- clen = rb_enc_mbclen(p, pend, enc);
- if (p+clen >= pend) break;
- p += clen;
- lpos++;
+ if (RSTRING_LEN(ptr->string) < ptr->pos) {
+ long len = RSTRING_LEN(ptr->string);
+ rb_str_resize(ptr->string, ptr->pos - 1);
+ memset(RSTRING_PTR(ptr->string) + len, 0, ptr->pos - len - 1);
+ rb_str_concat(ptr->string, c);
+ ptr->pos--;
+ }
+ else {
+ /* get logical position */
+ lpos = 0; p = RSTRING_PTR(ptr->string); pend = p + ptr->pos;
+ for (;;) {
+ clen = rb_enc_mbclen(p, pend, enc);
+ if (p+clen >= pend) break;
+ p += clen;
+ lpos++;
+ }
+ clen = p - RSTRING_PTR(ptr->string);
+ rb_str_update(ptr->string, lpos, ptr->pos ? 1 : 0, c);
+ ptr->pos = clen;
}
- clen = p - RSTRING_PTR(ptr->string);
- rb_str_update(ptr->string, lpos, ptr->pos ? 1 : 0, c);
- ptr->pos = clen;
return Qnil;
}
--
Yusuke ENDOH <mame@tsg.ne.jp>