[#29190] AIXでのコンパイル (オプションの統一など) — "Yutaka Kanemoto" <kinpoco@...>

金本ともうします。

21 messages 2006/08/06

[#29200] Re: [ruby-cvs:17336] ruby/lib/date: * lib/date/format.rb: specify maximum number of digits to parse — Tadayoshi Funaba <tadf@...>

ふなばです。

9 messages 2006/08/07

[#29252] 1.8.5への最終コミット — Yukihiro Matsumoto <matz@...>

まつもと ゆきひろです

14 messages 2006/08/10

[#29284] CGI#out で MIMEエンコード文字列がデコードされる — とみたまさひろ <tommy@...>

とみたです。

26 messages 2006/08/17
[#29285] Re: CGI#out で MIMEエンコード文字列がデコードされる — Takahiro Kambe <taca@...> 2006/08/17

In message <20060817182312.adce9ff7.tommy@tmtm.org>

[#29286] Re: CGI#out で MIMEエンコード文字列がデコードされる — とみたまさひろ <tommy@...> 2006/08/17

とみたです。

[#29287] Re: CGI#out で MIMEエンコード文字列がデコードされる — Fujioka <fuj@...> 2006/08/17

藤岡です。

[#29288] Re: CGI#out で MIMEエンコード文字列がデコードされる — Fujioka <fuj@...> 2006/08/17

藤岡です。

[#29290] Re: CGI#out で MIMEエンコード文字列がデコードされる — Yukihiro Matsumoto <matz@...> 2006/08/17

まつもと ゆきひろです

[#29292] Re: CGI#out で MIMEエンコード文字列がデコードされる — Fujioka <fuj@...> 2006/08/17

藤岡です。

[#29291] ruby 1.8.5 preview4 — Yukihiro Matsumoto <matz@...>

まつもと ゆきひろです

21 messages 2006/08/17
[#29314] Re: ruby 1.8.5 preview4 — URABE Shyouhei <root@...> 2006/08/18

卜部です。

[#29319] Re: ruby 1.8.5 preview4 — Yukihiro Matsumoto <matz@...> 2006/08/19

[#29321] Re: ruby 1.8.5 preview4 — URABE Shyouhei <root@...> 2006/08/19

卜部です。

[ruby-dev:29264] Re: Bus Error on OS X with rjb, irb and dl

From: nobu@...
Date: 2006-08-12 13:30:23 UTC
List: ruby-dev #29264
なかだです。

At Sat, 12 Aug 2006 20:19:27 +0900,
arton wrote in [ruby-dev:29262]:
> > $0への代入がまずいんでしょうか。
> パッチをためしてみました。
> 1.8.5-preview3で、そのままでは現象が再現し、パッチ適用後に解決することを
> 確認しました。

その後もうひとつ思い付いたことがあります。

今のところ、$0に代入された文字列をargv[0]にセットした後でargvの
残りはNULLでうめています。もしかしたら、memcmp()に渡されている
のはこれかもしれません。

以下のパッチも試してみてもらえますか。

> ただし、こちらの環境(OS X 10.4.7 PPC G4 というか何を見ればいいのかな?)
> では、__MacOS_X__は未定義だったので
> -#if defined(_WIN32) || defined(__MacOS_X__)
> +#if defined(_WIN32) || defined(__APPLE__) && defined(__MACH__)
> としました。

すいません、これは間違いでした。__MacOS_X__というのはprocess.c
で使っているマクロなんですが、次のように自前で定義しているもの
でした。ですから、__APPLE__&__MACH__という条件は正しいはずです。

#if defined(__APPLE__) && ( defined(__MACH__) || defined(__DARWIN__) ) && !defined(__MacOS_X__)
#define __MacOS_X__ 1
#endif


* ruby.c (set_arg0): fill argv other than the first with an empty
  string instead of NULL.


Index: ruby.c
===================================================================
RCS file: /cvs/ruby/src/ruby/ruby.c,v
retrieving revision 1.83.2.13
diff -p -U 2 -r1.83.2.13 ruby.c
--- ruby.c	1 Feb 2006 13:27:47 -0000	1.83.2.13
+++ ruby.c	12 Aug 2006 13:22:53 -0000
@@ -1066,16 +1066,11 @@ set_arg0(val, id)
     if (i >= len) {
 	i = len;
-	memcpy(origargv[0], s, i);
-	origargv[0][i] = '\0';
-    }
-    else {
-	memcpy(origargv[0], s, i);
-	s = origargv[0]+i;
-	*s++ = '\0';
-	while (++i < len)
-	    *s++ = ' ';
-	for (i = 1; i < origargc; i++)
-	    origargv[i] = 0;
     }
+    memcpy(origargv[0], s, i);
+    s = origargv[0] + i;
+    *s = '\0';
+    if (++i < len) memset(s + 1, ' ', len - i);
+    for (i = 1; i < origargc; i++)
+	origargv[i] = s;
     rb_progname = rb_tainted_str_new2(origargv[0]);
 #endif


-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread