[#34204] 「プログラミング Ruby 」 p.257 defined? はメソッド? — Noritsugu Nakamura <nnakamur@...>

15 messages 2002/03/05
[#34205] Re: 「プログラミング Ruby 」 p.257 defined? はメソッド? — nobu.nakada@... 2002/03/05

なかだです。

[#34244] しぶらぐっ議事録。 — rubiben <ozaki@...>

48 messages 2002/03/08
[#34246] Re: しぶらぐっ議事録。 — rubikitch <rubikitch@...> 2002/03/08

From: rubiben <ozaki@ruby-lang.org>

[#34250] Re: しぶらぐっ議事録。 — Minero Aoki <aamine@...> 2002/03/09

あおきです。

[#34448] 文字コード混在スクリプトの実行 — Noritsugu Nakamura <nnakamur@...>

14 messages 2002/03/16

[#34453] カレンダー文字列を作るメソッド — Take_tk <ggb03124@...>

たけ(tk)です。

13 messages 2002/03/16

[#34534] スクリプティング言語における GPL — Taku Nakajima <tnakajima@...>

中島@ブレーンです。

26 messages 2002/03/21

[#34552] Re: 1.7 に関して — "井上 浩一" <kyoui32@...>

井上です。

22 messages 2002/03/22
[#34556] Re: 1.7 に関して — "U.Nakamura" <usa@...> 2002/03/22

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

[#34590] Ruby FAQ (Re: 1.7 に関して) — TAKAHASHI Masayoshi <maki@...> 2002/03/22

高橋征義です。

[#34570] cgi.rb+ イテレータ — FUJIOKA Takeyuki <fujioka@...>

藤岡です。

15 messages 2002/03/22

[#34676] 安心できる Marshal と、 Ruby バージョンの検査法 — MALTA Koji <malta@...>

丸田と申します。

62 messages 2002/03/30
[#34678] Re: 安心できる Marshal と、 Ruby バージョンの検査法 — Koji Arai <JCA02266@...> 2002/03/31

新井です。

[#34682] Ruby バージョンの検査法 — MALTA Koji <malta@...> 2002/03/31

丸田です。 MarshalとRUBY_VERSIONの話題を分離します。

[#34694] Re: Ruby バージョンの検査法 — WATANABE Hirofumi <eban@...> 2002/04/01

わたなべです。

[#34695] Re: Ruby バージョンの検査法 — shukaku@... 2002/04/01

At Mon, 1 Apr 2002 16:06:23 +0900,

[#34697] Re: Ruby バージョンの検査法 — WATANABE Hirofumi <eban@...> 2002/04/01

わたなべです。

[#34714] Re: Ruby バージョンの検査法 — MALTA Koji <malta@...> 2002/04/01

丸田です。

[#34719] Re: Ruby バージョンの検査法 — HIDAKA Takahiro <cv8t-hdk@...> 2002/04/02

 ひだかです。

[#34738] Re: Ruby バージョンの検査法 — MALTA Koji <malta@...> 2002/04/02

丸田です。

[#34743] Re: Ruby バージョンの検査法 — matz@... (Yukihiro Matsumoto) 2002/04/02

まつもと ゆきひろです

[#34748] Re: Ruby バージョンの検査法 — "NAKAMURA, Hiroshi" <nakahiro@...> 2002/04/03

なひです。

[#34760] Re: Ruby バージョンの検査法 — Koji Arai <JCA02266@...> 2002/04/03

新井です。

[#34765] Re: Ruby バージョンの検査法 — "U.Nakamura" <usa@...> 2002/04/04

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

[#34776] Re: Ruby バージョンの検査法 — Tanaka Akira <akr@...17n.org> 2002/04/04

In article <20020404095542.7155.USA@osb.att.ne.jp>,

[#34681] 書籍に関する質問です — Nobuhide Kanagawa <nobuhide@...>

こんにちわ。

17 messages 2002/03/31

[ruby-list:34684] Re: 安心できる Marshal

From: Koji Arai <JCA02266@...>
Date: 2002-03-31 15:24:36 UTC
List: ruby-list #34684
新井です。

In message "[ruby-list:34680] 安心できる Marshal"
  on 31 Mar 2002 23:44:31 +0900,
  MALTA Koji <malta@zn.xdsl.ne.jp> wrote:
>  丸田です。 MarshalとRUBY_VERSIONの話題を分離します。
> 
> At Sun, 31 Mar 2002 17:55:19 +0900, Koji Arai san wrote:
> > > (1)
> > >  「安心できないMarshalのバグ」が修正されたRubyのバージョンはいくつでしょ
> > > うか?
> > 
> > 1.6.7 では?(^^;
> 
>  うわぉ。 1.6.6ですらなかったのですね。 あちこち入れ直さないと…。
>  ありがとうございます。後の[ruby-list:34679]も大変参考になりました。

いやいや、まだ上辺だけしか調べてないのでわかりません。
調べたのは ruby の挙動であり、フォーマットの方ではないです。
フォーマットは正しくてもあるバージョンでは読めないとか

> #しかし、おかしいな…ハマった時は1.6.5と1.6.6間だったような気が…。

CVS の marshal.c を見ると、バージョンの対応は

ruby          marshal.c
1.6.7 latest  1.26.2.14
1.6.7         1.26.2.12
1.6.6         1.26.2.9
1.6.5         1.26.2.7

となってて、

<http://www.ruby-lang.org/~knu/cgi-bin/cvsweb.cgi/ruby/marshal.c.diff?r1=1.26.2.7&r2=1.26.2.14&f=h>

と違いは結構ありますね(む、色つきだと w3m じゃわからない)。

以下は、Fixnum が怪しい(bugs-ja にそいういうのあったかな?ごそごそ、
ruby-bugs-ja(PR#72) かな?たぶん 64 bit マシンでしか影響はなさそう)

|@@ -292,7 +292,7 @@ w_object(obj, arg, limit)
|	 w_byte(TYPE_FIXNUM, arg);
|	 w_long(FIX2INT(obj), arg);
| #else
|-       if (RSHIFT((long)obj, 32) == 0 || RSHIFT((long)obj, 32) == -1) {
|+       if (RSHIFT((long)obj, 31) == 0 || RSHIFT((long)obj, 31) == -1) {
|	     w_byte(TYPE_FIXNUM, arg);
|	     w_long(FIX2LONG(obj), arg);
|	 }

--
新井康司 (Koji Arai)

In This Thread