[#26156] ruby 1.8.3 preview1 — Yukihiro Matsumoto <matz@...>

Hi,

28 messages 2005/05/12

[#26186] ruby_setenv dumps core with mod_ruby/1.4.2 — Tietew <tietew-ml-ruby-dev@...>

Tietew です。

15 messages 2005/05/18
[#26285] Re: ruby_setenv dumps core with mod_ruby/1.4.2 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/06/05

山本です。

[#26325] Re: ruby_setenv dumps core with mod_ruby/1.4.2 — Tietew <tietew-ml-ruby-dev@...> 2005/06/10

Tietew です。

[#26187] IO.select dumps core — Tanaka Akira <akr@...17n.org>

[ruby-talk:142505] で可能性に気がついたのですが、いま実験してみたとこ

31 messages 2005/05/18
[#26255] Re: IO.select dumps core — nobu@... 2005/05/31

なかだです。

[#26256] Re: IO.select dumps core — Tanaka Akira <akr@...17n.org> 2005/06/01

In article <200505311523.j4VFN4Y4005876@sharui.nakada.niregi.kanuma.tochigi.jp>,

[#26257] Re: IO.select dumps core — nobu@... 2005/06/01

なかだです。

[#26262] Re: IO.select dumps core — Tanaka Akira <akr@...17n.org> 2005/06/01

In article <200506010140.j511edY4012889@sharui.nakada.niregi.kanuma.tochigi.jp>,

[#26265] Re: IO.select dumps core — Takahiro Kambe <taca@...> 2005/06/02

In message <87u0khj377.fsf@m17n.org>

[#26365] Re: IO.select dumps core — とみたまさひろ <tommy@...> 2005/06/22

とみたです。

[#26366] Re: IO.select dumps core — nobu@... 2005/06/22

なかだです。

[#26369] Re: IO.select dumps core — とみたまさひろ <tommy@...> 2005/06/23

とみたです。

[#26242] many errors with soap/wsdl test on mswin32 — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

12 messages 2005/05/27
[#26249] Re: many errors with soap/wsdl test on mswin32 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/05/31

山本です。

[ruby-dev:26182] Re: autobuild failure: test_exception_subclass(SOAP::Marshal::TestMarshal)

From: "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Date: 2005-05-18 07:27:55 UTC
List: ruby-dev #26182
山本です。

>これもException#exceptionが常にException#initializeを呼ぶことを
>利用していたためですね。これはRegexpやRangeと同様にすれば通ると
>思うのですが、それとも#exceptionは特別扱いにしたほうがいいでしょ
>うか。

元々の問題は NameError のような一部例外で super が呼ばれていない
という物だったと思います。Exception#exception で initialize と initalize_copy の
両方が呼ばれてるのも気持ち悪いですし、Exception#exception は以前の挙動で
いいんじゃないかという気がします。


////////////////////////////
// コード

class Exception
  alias initialize_ initialize
  def initialize(*a)
    initialize_(*a)
    puts "initialize"
  end
  alias initialize_copy_ initialize_copy
  def initialize_copy(*a)
    initialize_copy_(*a)
    puts "initialize_copy"
  end
end

e = NameError.new
puts "-------------------------"
e.exception("aaa")

////////////////////////////
// 以前の挙動

E:\>ruby -v d.rb
ruby 1.8.2 (2005-05-12) [i386-bccwin32]
-------------------------
initialize_copy

////////////////////////////
// 現在の挙動

E:\ruby-cvs\bcc32_1_8>ruby18 -v \d.rb
ruby 1.8.3 (2005-05-17) [i386-bccwin32]
initialize
-------------------------
initialize_copy
initialize

/////////////////////////
// 添付パッチ後

E:\ruby-cvs\bcc32_1_8>ruby18 -v \d.rb
ruby 1.8.3 (2005-05-17) [i386-bccwin32]
initialize
-------------------------
initialize_copy

Index: error.c
===================================================================
RCS file: /src/ruby/error.c,v
retrieving revision 1.85.2.13
diff -u -w -b -p -r1.85.2.13 error.c
--- error.c	14 May 2005 14:59:53 -0000	1.85.2.13
+++ error.c	18 May 2005 07:12:00 -0000
@@ -384,7 +384,7 @@ exc_exception(argc, argv, self)
     if (argc == 0) return self;
     if (argc == 1 && self == argv[0]) return self;
     exc = rb_obj_clone(self);
-    rb_obj_call_init(exc, argc, argv);
+    exc_initialize(argc, argv, exc);
 
     return exc;
 }


In This Thread

Prev Next