[#42508] [Ruby 1.9-Bug#4013][Open] rake/test_tasks.rb fails if ENV assined test value — Akio Tajima <redmine@...>
Bug #4013: rake/test_tasks.rb fails if ENV assined test value
7 messages
2010/11/01
[#42520] GC issues — SASADA Koichi <ko1@...>
ささだです。
6 messages
2010/11/03
[#42522] Proposal: thread local freelist — SASADA Koichi <ko1@...>
ささだです。
4 messages
2010/11/03
[#42551] [Ruby 1.9-Bug#4034][Open] format() の %a 指定子での丸めが常に零方向になっている — tadayoshi funaba <redmine@...>
Bug #4034: format() の %a 指定子での丸めが常に零方向になっている
5 messages
2010/11/07
[#42564] [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案 — Makoto Kishimoto <redmine@...>
Feature #4043: グローバル関数current_classの提案
15 messages
2010/11/11
[#42774] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案
— Yukihiro Matsumoto <matz@...>
2010/12/16
まつもと ゆきひろです
[#42834] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案
— "KISHIMOTO, Makoto" <ksmakoto@...4u.or.jp>
2010/12/21
きしもとです
[#42835] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案
— Yukihiro Matsumoto <matz@...>
2010/12/21
まつもと ゆきひろです
[#42838] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案
— "KISHIMOTO, Makoto" <ksmakoto@...4u.or.jp>
2010/12/21
きしもとです
[#42845] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案
— Yukihiro Matsumoto <matz@...>
2010/12/21
まつもと ゆきひろです
[#42849] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案
— "U.Nakamura" <usa@...>
2010/12/22
こんにちは、なかむら(う)です。
[#42577] Rubyのバグレポートのガイドライン — "Shota Fukumori (sora_h)" <sorah@...>
sora_hです。
11 messages
2010/11/15
[#42588] Re: Rubyのバグレポートのガイドライン
— Yugui <yugui@...>
2010/11/18
2010/11/15 Shota Fukumori (sora_h) <sorah@tubusu.net>:
[#42589] Re: Rubyのバグレポートのガイドライン
— "Shota Fukumori (sora_h)" <sorah@...>
2010/11/18
元を書いてくれたmame3の様子をみてドラフトを外してみようかと思います。
[#42601] [Ruby 1.9-Bug#4072][Open] dRubyで作成したサーバプログラムがsleepしていてもexitしてしまう — 三村 益隆 <redmine@...>
Bug #4072: dRubyで作成したサーバプログラムがsleepしていてもexitしてしまう
7 messages
2010/11/19
[#42625] [Ruby 1.9-Feature#4089][Open] Add addr2line for C level backtrace — Yui NARUSE <redmine@...>
Feature #4089: Add addr2line for C level backtrace
6 messages
2010/11/26
[#42638] Enumerable#categorize — Tanaka Akira <akr@...>
enumerable から hash を生成するメソッドとして
25 messages
2010/11/27
[#42643] Re: Enumerable#categorize
— Yukihiro Matsumoto <matz@...>
2010/11/27
まつもと ゆきひろです
[#42644] Re: Enumerable#categorize
— Tanaka Akira <akr@...>
2010/11/27
2010年11月27日23:19 Yukihiro Matsumoto <matz@ruby-lang.org>:
[#42645] Re: Enumerable#categorize
— Yukihiro Matsumoto <matz@...>
2010/11/27
まつもと ゆきひろです
[#42646] Re: Enumerable#categorize
— Tanaka Akira <akr@...>
2010/11/27
2010年11月27日23:51 Yukihiro Matsumoto <matz@ruby-lang.org>:
[#42639] Re: Enumerable#categorize
— Urabe Shyouhei <shyouhei@...>
2010/11/27
(2010/11/27 18:45), Tanaka Akira wrote:
[#42656] [Request for Comment] avoid timer thread — SASADA Koichi <ko1@...>
Hi,
1 message
2010/11/29
[ruby-dev:42538] [Ruby 1.9-Bug#4024][Open] IO#readlines(0) never return
From:
Tomoyuki Chikanaga <redmine@...>
Date:
2010-11-04 14:11:27 UTC
List:
ruby-dev #42538
Bug #4024: IO#readlines(0) never return http://redmine.ruby-lang.org/issues/show/4024 起票者: Tomoyuki Chikanaga ステータス: Open, 優先度: Normal カテゴリ: core ruby -v: ruby 1.9.3dev (2010-11-04 trunk 29690) [x86_64-darwin10.4.0] 1.9.2 および trunk で IO#readlines の引数に 0 を渡すと無限ループ状態になり処理がかえってこなくなります。 IO#each_line も同様に "" を yield し続けます。 (via http://twitter.com/#!/watson1978/status/29656929210) readlines/each_line で limit に 0 が渡された時は例外にするのが良いのではないでしょうか。 パッチを添付します。 ---------------------------------------- http://redmine.ruby-lang.org
Attachments (1)
io_readlines.patch
(1.35 KB, text/x-diff)
Index: io.c
===================================================================
--- io.c (revision 29690)
+++ io.c (working copy)
@@ -2724,6 +2724,8 @@
long limit;
prepare_getline_args(argc, argv, &rs, &limit, io);
+ if (limit == 0)
+ rb_raise(rb_eArgError, "invalid limit: 0 for readlines");
ary = rb_ary_new();
while (!NIL_P(line = rb_io_getline_1(rs, limit, io))) {
rb_ary_push(ary, line);
@@ -2773,6 +2775,8 @@
RETURN_ENUMERATOR(io, argc, argv);
prepare_getline_args(argc, argv, &rs, &limit, io);
+ if (limit == 0)
+ rb_raise(rb_eArgError, "invalid limit: 0 for each_line");
while (!NIL_P(str = rb_io_getline_1(rs, limit, io))) {
rb_yield(str);
}
Index: test/ruby/test_io.rb
===================================================================
--- test/ruby/test_io.rb (revision 29690)
+++ test/ruby/test_io.rb (working copy)
@@ -1702,4 +1702,24 @@
GC.start
end
end
+
+ def test_readlines_limit_0
+ bugxxx = "[ruby-dev:xxx]"
+ t = make_tempfile
+ assert_raise(ArgumentError, bugxxx) do
+ open(t.path, "r") do |io|
+ io.readlines(0)
+ end
+ end
+ end
+
+ def test_each_line_limit_0
+ bugxxx = "[ruby-dev:xxx]"
+ t = make_tempfile
+ assert_raise(ArgumentError, bugxxx) do
+ open(t.path, "r") do |io|
+ io.each_line(0).next
+ end
+ end
+ end
end