[#9052] bang method returns string always — WATANABE Hirofumi <eban@...>

わたなべです.

92 messages 2000/02/01
[#9054] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/01

まつもと ゆきひろです

[#9060] Re: bang method returns string always — WATANABE Hirofumi <eban@...> 2000/02/02

わたなべです.

[#9062] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/02

まつもと ゆきひろです

[#9070] Re: bang method returns string always — Wakou Aoyama <wakou@...> 2000/02/03

青山です。

[#9082] Re: bang method returns string always — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/02/04

なひです.

[#9083] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/04

まつもと ゆきひろです

[#9259] ruby object — Minero Aoki <aamine@...> 2000/02/20

あおきです。

[#9263] Re: ruby object — matz@... (Yukihiro Matsumoto) 2000/02/21

まつもと ゆきひろです

[#9264] Re: ruby object — Minero Aoki <aamine@...> 2000/02/21

あおきです。

[#9266] Re: ruby object — matz@... (Yukihiro Matsumoto) 2000/02/22

まつもと ゆきひろです

[#9084] Re: bang method returns string always — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/02/04

なひです.

[#9096] Re: bang method returns string always — Kazunori NISHI <kazunori@...> 2000/02/04

西@九大です。

[#9100] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/04

まつもと ゆきひろです

[#9154] Re: bang method returns string always — Kazunori NISHI <kazunori@...> 2000/02/08

西@九大です。

[#9158] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/08

まつもと ゆきひろです

[#9170] Re: bang method returns string always — Kazunori NISHI <kazunori@...> 2000/02/09

西@九大です。

[#9171] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/09

まつもと ゆきひろです

[#9173] Re: bang method returns string always — Koji Arai <JCA02266@...> 2000/02/09

新井です。

[#9206] Re: bang method returns string always — nobu.nakada@... 2000/02/13

なかだです。

[#9207] Re: bang method returns string always — "Akinori -Aki- MUSHA" <knu@...> 2000/02/13

 knuです。

[#9208] Re: bang method returns string always — nobu.nakada@... 2000/02/13

なかだです。

[#9211] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/13

まつもと ゆきひろです

[#9212] Re: bang method returns string always — "Akinori -Aki- MUSHA" <knu@...> 2000/02/13

 knuです。

[#9213] Re: bang method returns string always — Kazuhiro Yoshida <moriq.kazuhiro@...> 2000/02/14

もりきゅうです。ゴミまき。

[#9214] Re: bang method returns string always — gotoken@... (GOTO Kentaro) 2000/02/14

ごとけんです

[#9215] Re: bang method returns string always — WATANABE Hirofumi <Hirofumi.Watanabe@...> 2000/02/14

わたなべです.

[#9218] Re: bang method returns string always — Kazuhiro Yoshida <moriq.kazuhiro@...> 2000/02/15

もりきゅうです。

[#9219] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/15

まつもと ゆきひろです

[#9220] Re: bang method returns string always — Kazuhiro Yoshida <moriq.kazuhiro@...> 2000/02/15

もりきゅうです。

[#9222] Re: bang method returns string always — Koji Arai <JCA02266@...> 2000/02/15

新井です。

[#9224] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/15

まつもと ゆきひろです

[#9085] xmalloc() in Windows — "Shigeo Kobayashi" <shigeo@...>

小林です。

38 messages 2000/02/04

[#9134] Re: site_ruby — gotoken@... (GOTO Kentaro)

ごとけんです

24 messages 2000/02/07
[#9135] Re: site_ruby — WATANABE Hirofumi <Hirofumi.Watanabe@...> 2000/02/07

わたなべです.

[#9143] Re: site_ruby — nobu.nakada@... 2000/02/07

なかだです。

[#9161] Re: site_ruby — gotoken@... (GOTO Kentaro) 2000/02/08

In message "[ruby-dev:9143] Re: site_ruby"

[#9290] [fix] String#* with huge string — EGUCHI Osamu <eguchi@...>

えぐち@エスアンドイー です。

17 messages 2000/02/26
[#9293] Re: [fix] String#* with huge string — matz@... (Yukihiro Matsumoto) 2000/02/26

まつもと ゆきひろです

[#9294] Re: [fix] String#* with huge string — EGUCHI Osamu <eguchi@...> 2000/02/27

えぐち@エスアンドイー です。

[#9297] GC Problem ? — "Shigeo Kobayashi" <shigeo@...>

小林です。

23 messages 2000/02/27

[ruby-dev:9250] Re: RubyCRT.dll (Re: xmalloc() in Windows)

From: Katsuyuki Komatsu <komatsu@...>
Date: 2000-02-17 11:03:42 UTC
List: ruby-dev #9250
小松です。

In the message of [ruby-dev:9240] Re: RubyCRT.dll (Re: xmalloc() in Windows)
    on 2000/2/17 11:17 WATANABE Hirofumi <Hirofumi.Watanabe@jp.sony.com> wrote:
>:MSVCRT の内部構造まで必要とする理由はなんなのでしょうか?
>
>バグがあるからです.
>Perl の win32/win32.c

Perlの方のO_NOINHERITの対応も入れた方がいいでしょうね。

バグ以外だと、struct OpenFileにFILE *fとFILE *f2があって、
同じソケットハンドルを指させる必要があるというのも関係しています。

>http://www.perl.com/CPAN/authors/id/D/DO/DOUGL/PerlCRT-README-2.05.txt
>ついでにここに書いてある patch もあてたほうがいいかもしれない.

そうですね……
入れましたが、95が入っているマシンがないや。

以下は、RubyCRT.dllを導入するためのwin32.{h,c}の変更です。
# mypopen(), getcwd()のバグフィックスも入ってますが。

Ruby 1.4.4にもそのまま適応可能です。

Thu Feb 17 19:09:05 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/win32.c (mypopen): don't close handle if it is not assigned.
	* win32/win32.c (my_open_osfhandle): support O_NOINHERIT flag.
	* win32/win32.c (win32_getcwd): rename getcwd to win32_getcwd
	  in order to avoid using the C/C++ runtime DLL's getcwd.
	  Use CharNext() to process directory name.
	* win32/win32.h: map getcwd to win32_getcwd.

diff -ru2p ruby-1.5.2.dist/win32/win32.c ruby-1.5.2/win32/win32.c
--- ruby-1.5.2.dist/win32/win32.c	Tue Feb  1 12:12:21 2000
+++ ruby-1.5.2/win32/win32.c	Thu Feb 17 19:09:05 2000
@@ -547,13 +547,12 @@ mypopen (char *cmd, char *mode) 
 			free(lpCmd2);
 
-		CloseHandle(aProcessInformation.hThread);
-
 		if (!fRet) {
 			CloseHandle(hInFile);
 			CloseHandle(hOutFile);
-			CloseHandle(aProcessInformation.hProcess);
 			return NULL;
 		}
 
+		CloseHandle(aProcessInformation.hThread);
+
 		if (reading) {
 			fd = _open_osfhandle((long)hInFile,  (_O_RDONLY | pipemode));
@@ -1542,5 +1541,5 @@ typedef struct	{
 }	ioinfo;
 
-EXTERN_C ioinfo * __pioinfo[];
+EXTERN_C _CRTIMP ioinfo * __pioinfo[];
 
 #define IOINFO_L2E			5
@@ -1550,4 +1549,5 @@ EXTERN_C ioinfo * __pioinfo[];
 
 #define FOPEN			0x01	/* file handle open */
+#define FNOINHERIT		0x10	/* file handle opened O_NOINHERIT */
 #define FAPPEND			0x20	/* file handle opened O_APPEND */
 #define FDEV			0x40	/* file handle refers to device */
@@ -1569,4 +1569,7 @@ my_open_osfhandle(long osfhandle, int fl
 	fileflags |= FTEXT;
 
+    if (flags & O_NOINHERIT)
+	fileflags |= FNOINHERIT;
+
     /* attempt to allocate a C Runtime file handle */
     if ((fh = _alloc_osfhnd()) == -1) {
@@ -2204,5 +2207,5 @@ gettimeofday(struct timeval *tv, struct 
 
 char *
-getcwd(buffer, size)
+win32_getcwd(buffer, size)
     char *buffer;
     int size;
@@ -2219,5 +2222,5 @@ getcwd(buffer, size)
     }
 
-    for (bp = buffer; *bp != '\0'; bp++) {
+    for (bp = buffer; *bp != '\0'; bp = CharNext(bp)) {
 	if (*bp == '\\') {
 	    *bp = '/';
diff -ru2p ruby-1.5.2.dist/win32/win32.h ruby-1.5.2/win32/win32.h
--- ruby-1.5.2.dist/win32/win32.h	Wed Jan  5 13:37:27 2000
+++ ruby-1.5.2/win32/win32.h	Thu Feb 17 19:09:05 2000
@@ -388,4 +388,9 @@ extern char *mystrerror(int);
 #define get_osfhandle myget_osfhandle
 
+#ifdef getcwd
+#undef getcwd
+#endif
+#define getcwd win32_getcwd
+
 #ifdef getenv
 #undef getenv

--
小松克行 / Katsuyuki Komatsu <komatsu@sarion.co.jp>

In This Thread