[#24210] [SEGV] redefine Struct with same name — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。Struct を同じ名前で二度定義すると、
6 messages
2004/09/03
[#24213] 1.instance_eval "@@a" dumps core — Tanaka Akira <akr@...17n.org>
次のように、1.instance_eval "@@a" とすると core を吐きます。
10 messages
2004/09/03
[#24217] Re: 1.instance_eval "@@a" dumps core
— Yukihiro Matsumoto <matz@...>
2004/09/03
まつもと ゆきひろです
[#24218] Re: 1.instance_eval "@@a" dumps core
— Tanaka Akira <akr@...17n.org>
2004/09/04
In article <1094229200.559688.22218.nullmailer@picachu.netlab.jp>,
[#24219] Re: 1.instance_eval "@@a" dumps core
— Yukihiro Matsumoto <matz@...>
2004/09/05
まつもと ゆきひろです
[#24220] Re: 1.instance_eval "@@a" dumps core
— Tanaka Akira <akr@...17n.org>
2004/09/05
In article <1094342919.363209.2395.nullmailer@picachu.netlab.jp>,
[#24221] Re: 1.instance_eval "@@a" dumps core
— Yukihiro Matsumoto <matz@...>
2004/09/05
まつもと ゆきひろです
[#24231] system("") — Tanaka Akira <akr@...17n.org>
次のように、system("") が例外になるのは意図された挙動でしょうか?
6 messages
2004/09/06
[#24234] 要素代入での?!の扱いについて — Nowake <nowake@...>
野分です。
6 messages
2004/09/06
[#24255] ripper committed — Minero Aoki <aamine@...>
青木です。
11 messages
2004/09/12
[#24261] Array#collect! dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
7 messages
2004/09/14
[#24277] new NKF2拡張ライブラリ — "Kenichi.Tamura" <sgs02516@...>
たむらです。
5 messages
2004/09/16
[#24287] Array#sort! with calcc dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
6 messages
2004/09/19
[#24288] Re: Array#sort! with calcc dumps core
— Yukihiro Matsumoto <matz@...>
2004/09/19
まつもと ゆきひろです
[#24302] Procのブロック呼び出しメソッド名を自由に設定 — Nowake <nowake@...>
こんばんは、野分です。
8 messages
2004/09/21
[#24304] Re: Procのブロック呼び出しメソッド名を自由に設定
— Yukihiro Matsumoto <matz@...>
2004/09/22
まつもと ゆきひろです
[#24311] Array#sort! dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
5 messages
2004/09/22
[#24315] String#sub! dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
5 messages
2004/09/23
[#24332] Marshal.dump dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
4 messages
2004/09/24
[#24337] Re: [ruby-cvs] ruby: * hash.c: iterator functions for hash_foreach() should return enum — nobu@...
なかだです。
4 messages
2004/09/24
[#24341] Array#* dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
9 messages
2004/09/25
[#24351] Re: Array#* dumps core
— nobu@...
2004/09/27
なかだです。
[#24354] finalizer
— Tanaka Akira <akr@...17n.org>
2004/09/27
In article <200409270225.i8R2PDfs014206@sharui.nakada.niregi.kanuma.tochigi.jp>,
[#24368] Enumerable#sort_by dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
4 messages
2004/09/28
[ruby-dev:24262] Re: Array#collect! dumps core
From:
nobu@...
Date:
2004-09-14 04:59:47 UTC
List:
ruby-dev #24262
なかだです。
At Tue, 14 Sep 2004 12:39:50 +0900,
Tanaka Akira wrote in [ruby-dev:24261]:
> # これが最後とは思えない
yieldした結果にしたがって書き換えるのは、reject!もありますね。
* array.c (rb_ary_collect_bang, rb_ary_reject_bang): end if shortened.
[ruby-dev:24261]
* array.c (rb_ary_equal, rb_ary_eql, rb_ary_cmp): get rid of
overrunning peer array. [ruby-dev:24254]
Index: array.c
===================================================================
RCS file: /cvs/ruby/src/ruby/array.c,v
retrieving revision 1.154
diff -u -2 -p -r1.154 array.c
--- array.c 24 Jul 2004 09:48:21 -0000 1.154
+++ array.c 14 Sep 2004 04:55:03 -0000
@@ -1794,5 +1794,7 @@ rb_ary_collect_bang(ary)
rb_ary_modify(ary);
for (i = 0; i < RARRAY(ary)->len; i++) {
- RARRAY(ary)->ptr[i] = rb_yield(RARRAY(ary)->ptr[i]);
+ VALUE v = rb_yield(RARRAY(ary)->ptr[i]);
+ if (i >= RARRAY(ary)->len) break;
+ RARRAY(ary)->ptr[i] = v;
}
return ary;
@@ -2053,4 +2055,5 @@ rb_ary_reject_bang(ary)
if (RTEST(rb_yield(RARRAY(ary)->ptr[i1]))) continue;
if (i1 != i2) {
+ if (i1 >= RARRAY(ary)->len) break;
RARRAY(ary)->ptr[i2] = RARRAY(ary)->ptr[i1];
}
@@ -2547,4 +2550,5 @@ rb_ary_equal(ary1, ary2)
if (!rb_equal(RARRAY(ary1)->ptr[i], RARRAY(ary2)->ptr[i]))
return Qfalse;
+ if (RARRAY(ary1)->len != RARRAY(ary2)->len) return Qfalse;
}
return Qtrue;
@@ -2571,4 +2575,5 @@ rb_ary_eql(ary1, ary2)
if (!rb_eql(RARRAY(ary1)->ptr[i], RARRAY(ary2)->ptr[i]))
return Qfalse;
+ if (RARRAY(ary1)->len != RARRAY(ary2)->len) return Qfalse;
}
return Qtrue;
@@ -2663,4 +2668,10 @@ rb_ary_cmp(ary1, ary2)
if (v != INT2FIX(0)) {
return v;
+ }
+ if (len > RARRAY(ary1)->len) {
+ len = RARRAY(ary1)->len;
+ }
+ if (len > RARRAY(ary2)->len) {
+ len = RARRAY(ary2)->len;
}
}
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦