[#23332] to_str再考 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

15 messages 2004/04/05

[#23380] [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

17 messages 2004/04/15
[#23400] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。落ちる場所がわかりました。

[#23402] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。

[#23403] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — nobu.nakada@... 2004/04/16

なかだです。

[#23405] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。

[#23407] Re: [SEGV] make test-all (bccwin32 ruby1.9.0) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/04/16

山本です。

[ruby-dev:23419] Re: [SEGV] make test-all (bccwin32 ruby1.9.0)

From: "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Date: 2004-04-20 13:40:10 UTC
List: ruby-dev #23419
山本です。

nobu.nakada@nifty.ne.jp wrote:
(2004/04/20 20:02)

>なかだです。
>
>At Tue, 20 Apr 2004 17:51:15 +0900,
>H.Yamamoto wrote in [ruby-dev:23417]:
>> となっていて、rb_check_argv をした後に !prog && argc == 1 だと
>> argv が無効なポインタを指すので、argv[0] への代入でメモリを壊して
>> いるのだと思います。
>> 
>> 下のようにすれば SEGV はしなくなります。(これが意図された挙動かどうかは
>> わかりません)
>
>すいません。それでいいと思います。

process.c (1253) にも、配列外にアクセスしているところがありました。

    if (!prog && argc == 1) {
	--argc;
	prog = *argv++;
    }

が間違えやすくしていると思うので、これを無くせないか考えているのですが
今日中には難しそうです。


In This Thread