[#42735] [Ruby 1.9-Feature#4147][Open] Array#sample で重みを指定したい — Yoji Ojima <redmine@...>

Feature #4147: Array#sample で重みを指定したい

52 messages 2010/12/10
[#42791] [Ruby 1.9-Feature#4147][Assigned] Array#sample で重みを指定したい — Shyouhei Urabe <redmine@...> 2010/12/18

チケット #4147 が更新されました。 (by Shyouhei Urabe)

[#42800] Re: [Ruby 1.9-Feature#4147][Assigned] Array#sample で重みを指定したい — Masaya TARUI <tarui@...> 2010/12/19

> じゃあ反対ないので実装はともかく、この仕様は基本入れる方向で考えましょう。反対の人は意思表示お早めに。

[#42763] [Ruby 1.9-Bug#4159][Open] test_block_variables(TestRipper::ParserEvents) が失敗する — Kouhei Yanagita <redmine@...>

Bug #4159: test_block_variables(TestRipper::ParserEvents) が失敗する

8 messages 2010/12/14

[#42894] [Ruby 1.8-Feature#4207][Open] これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには — Shyouhei Urabe <redmine@...>

Feature #4207: これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには

24 messages 2010/12/26
[#42935] Re: [Ruby 1.8-Feature#4207][Open] これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには — Kenta Murata <muraken@...> 2011/01/04

むらたです。

[#42936] Re: [Ruby 1.8-Feature#4207][Open] これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには — Kenta Murata <muraken@...> 2011/01/05

むらたです。

[ruby-dev:42719] [Ruby 1.9-Bug#4131][Assigned] can't set length of shared string error in IO#read

From: Masaya Tarui <redmine@...>
Date: 2010-12-07 13:29:02 UTC
List: ruby-dev #42719
Bug #4131: can't set length of shared string error in IO#read
http://redmine.ruby-lang.org/issues/show/4131

起票者: Masaya Tarui
ステータス: Assigned, 優先度: Low
担当者: Masaya Tarui, カテゴリ: core
ruby -v: ruby 1.9.3dev (2010-12-07 trunk 30119) [i386-mswin32_90]

IO#readにおいて、
lengthがnilでbufferにsharedなStringを指定したときに以下のようにエラーになります。

>ruby -ve "a='abcdefghijkl';b=a[1,3];STDIN.read(nil,a)"
ruby 1.9.3dev (2010-12-07 trunk 30119) [i386-mswin32_90]
-e:1:in `read': can't set length of shared string (RuntimeError)
        from -e:1:in `<main>'

patchを貼り付けますが、この後、他のbugfixのためにリファクタリング予定です。
Index: io.c
===================================================================
--- io.c        (リビジョン 30119)
+++ io.c        (作業コピー)
@@ -2212,7 +2212,10 @@
     rb_scan_args(argc, argv, "02", &length, &str);

     if (NIL_P(length)) {
-       if (!NIL_P(str)) StringValue(str);
+       if (!NIL_P(str)){
+           StringValue(str);
+           rb_str_modify(str);
+       }
        GetOpenFile(io, fptr);
        rb_io_check_char_readable(fptr);
        return read_all(fptr, remain_size(fptr), str);


----------------------------------------
http://redmine.ruby-lang.org

In This Thread

Prev Next