[#26468] $SAFE=1 の open-uri で redirect 時にエラー — Kazuhiko <kazuhiko@...>

かずひこです。

40 messages 2005/07/07
[#26469] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/07

In article <m3zmsylimn.wl%kazuhiko@fdiary.net>,

[#26470] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/07

まつもと ゆきひろです

[#26471] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/07

In article <1120754832.716261.15867.nullmailer@x31.priv.netlab.jp>,

[#26472] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/07

まつもと ゆきひろです

[#26475] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/08

In article <1120762886.189058.18880.nullmailer@x31.priv.netlab.jp>,

[#26476] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/08

まつもと ゆきひろです

[#26479] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/08

In article <1120810939.815280.27104.nullmailer@x31.priv.netlab.jp>,

[#26483] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/08

まつもと ゆきひろです

[#26485] Re: $SAFE=1 の open-uri で redirect 時にエラー — Shugo Maeda <shugo@...> 2005/07/08

前田です。

[#26486] Re: $SAFE=1 の open-uri で redirect 時にエラー — Yukihiro Matsumoto <matz@...> 2005/07/08

まつもと ゆきひろです

[#26525] Re: $SAFE=1 の open-uri で redirect 時にエラー — Tanaka Akira <akr@...17n.org> 2005/07/12

In article <42CF1918.5000603@ruby-lang.org>,

[#26493] can't handle \c\ — KIMURA Koichi <kbk@...>

木村です。

18 messages 2005/07/09
[#26496] Re: can't handle \c\ — "URABE Shyouhei aka. mput" <root@...> 2005/07/10

卜部でございます。

[#26574] SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — Tanaka Akira <akr@...17n.org>

次のように、メッセージの最後が切れます。

28 messages 2005/07/19
[#26576] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — Yukihiro Matsumoto <matz@...> 2005/07/19

まつもと ゆきひろです

[#26578] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobu@... 2005/07/19

なかだです。

[#26579] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/07/19

山本です。

[#26580] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — Yukihiro Matsumoto <matz@...> 2005/07/19

まつもと ゆきひろです

[#26586] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobuyoshi nakada <nobuyoshi.nakada@...> 2005/07/20

なかだです。

[#26587] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/07/20

山本です。

[#26589] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobu@... 2005/07/20

なかだです。

[#26597] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/07/21

山本です。

[#26599] Re: SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — nobuyoshi nakada <nobuyoshi.nakada@...> 2005/07/22

なかだです。

[#26628] show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

37 messages 2005/07/28
[#26632] Re: show information of '--enable-pthread' — Yukihiro Matsumoto <matz@...> 2005/07/28

まつもと ゆきひろです

[#26634] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/28

永井@知能.九工大です.

[#26635] Re: show information of '--enable-pthread' — WATANABE Hirofumi <eban@...> 2005/07/28

わたなべです。

[#26645] Re: show information of '--enable-pthread' — "U.Nakamura" <usa@...> 2005/07/29

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

[#26646] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/29

永井@知能.九工大です.

[#26658] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/31

永井@知能.九工大です.

[#26659] Re: show information of '--enable-pthread' — Takahiro Kambe <taca@...> 2005/07/31

In message <20050731.094203.74726476.nagai@ai.kyutech.ac.jp>

[#26662] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/07/31

永井@知能.九工大です.

[#26663] Re: show information of '--enable-pthread' — "U.Nakamura" <usa@...> 2005/07/31

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

[#26669] Re: show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...> 2005/08/01

永井@知能.九工大です.

[ruby-dev:26533] syserror() returns string terminated with return code

From: "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Date: 2005-07-13 10:55:34 UTC
List: ruby-dev #26533
山本です。

>念のためしばらく時間を置いて、夜にでもコミットします。
>
>* win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
>  if file or directory already exists. (bcc32)
>
>* win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
>  if it is not directory. (bcc32, win32)
>
>* win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
>  FILE_ATTRIBUTE_READONLY flag on function failure.

こちらはコミットしました。

bcc32 絡みで、もう二つ問題を見つけてしまいました。

1. syserror() が改行で終わる文字列を返すため、エラーメッセージが見づらい。
   今回 win32 と比べて初めて気づいた。

2. 少なくとも bcc5.5.1 では、_sys_errlist のバグにより ENAMETOOLONG と
   ENOTEMPTY のメッセージがおかしい。

errno.h では

#define ENAMETOOLONG 48 /* Filename too long                */
#define ENOTEMPTY 49    /* Directory not empty              */

となっているのに、_sys_errlist の定義では

/* 48 */    "Directory not empty"
};

で終わっているためです。C++Builder6 で直っているかどうかはわかりません。とりあえず
C++Builder5 だけ対処するパッチです。

# ところで、bcc32 ポートの対応コンパイラは、bcc32/README.bcc32 を見ると
# Borland C++ 5.0 or later. となっているのですが、以前 C++Builder1 (bcc5.2)
# でコンパイルしたときは、ilink32 がないなどの理由でできませんでした。
# 正式にはどのバージョンからサポートされますか?
# Borland C++ 5.5 or later だと hypot() が使えるので、HAVE_HYPOT を定義したいです。

Index: win32.c
===================================================================
RCS file: /src/ruby/win32/win32.c,v
retrieving revision 1.157
diff -u -w -b -p -r1.157 win32.c
--- win32.c	13 Jul 2005 10:40:06 -0000	1.157
+++ win32.c	13 Jul 2005 10:49:48 -0000
@@ -1752,6 +1752,12 @@ rb_w32_strerror(int e)
     DWORD source = 0;
     char *p;
 
+#if defined __BORLANDC__ && 0x0550 <= __BORLANDC__ && __BORLANDC__ <= 0x0551
+    if (e == ENAMETOOLONG)
+	return "Filename too long";
+    if (e == ENOTEMPTY)
+	return "Directory not empty";
+#endif
     if (e < 0 || e > sys_nerr) {
 	if (e < 0)
 	    e = GetLastError();
@@ -1760,14 +1766,17 @@ rb_w32_strerror(int e)
 			  buffer, 512, NULL) == 0) {
 	    strcpy(buffer, "Unknown Error");
 	}
+    }
+    else {
+	strncpy(buffer, strerror(e), sizeof(buffer));
+	buffer[sizeof(buffer) - 1] = 0;
+    }
 	for (p = buffer + strlen(buffer) - 1; buffer <= p; p--) {
 	    if (*p != '\r' && *p != '\n') break;
 	    *p = 0;
 	}
 	return buffer;
     }
-    return strerror(e);
-}
 
 //
 // various stubs

////////////////////////////////////////////
// パッチ前

E:\ruby-cvs\bcc32>irb19
irb(main):001:0> raise Errno::ENAMETOOLONG
Errno::ENAMETOOLONG: Directory not empty

        from (irb):1
irb(main):002:0> Dir.rmdir("../ruby_1_8")
Errno::ENOTEMPTY: Unknown error
 - ../ruby_1_8
        from (irb):2:in `rmdir'
        from (irb):2

////////////////////////////////////////////
// パッチ後

E:\ruby-cvs\bcc32>irb19
irb(main):001:0> raise Errno::ENAMETOOLONG
Errno::ENAMETOOLONG: Filename too long
        from (irb):1
irb(main):002:0> Dir.rmdir("../ruby_1_8")
Errno::ENOTEMPTY: Directory not empty - ../ruby_1_8
        from (irb):2:in `rmdir'
        from (irb):2


In This Thread