[#8468] require で SEGV — ruby <g96p0935@...>
西本です。
[#8469] [PATCH] -s command line option — nobu.nakada@...
なかだです。
[#8507] mode_t in file.c — Katsuyuki Komatsu <komatsu@...>
小松です。
[#8530] Enumerable and rand — Koretsugu Daigoro <tmmcross@...>
これつぐです。
まつもと ゆきひろです
これつぐです。
まつもと ゆきひろです
原です。
まつもと ゆきひろです
原です。
ごとけんです
これつぐです。
[#8565] interface declaretion — "Dai.K." <MAP2303@...>
[#8581] Re: [ruby-list:19228] Ruby 1.4.3 — Katsuyuki Komatsu <komatsu@...>
小松です。
まつもと ゆきひろです
えぐち@エスアンドイー です。
小松です。
まつもと ゆきひろです
小松です。
[#8622] Win32API (Re: Ruby 1.4.3 binaries for Cygwin and DJGPP) — WATANABE Hirofumi <Hirofumi.Watanabe@...>
わたなべです.
有馬@FITECです。
よしだです
[#8623] [BUG?] core dump `ruby -r debug' — IWAMURO Motonori <iwa@...>
岩室@富士通です。
[#8635] slow gsub — WATANABE Hirofumi <Hirofumi.Watanabe@...>
わたなべです.
[#8645] urllib and httplib — TAKAHASHI Masayoshi <maki@...>
高橋征義です。
なひです.
高橋征義です。
なひです.
まつもと ゆきひろです
なひです.
青山です。
なひです.
高橋征義です。
まつもと ゆきひろです
高橋征義です。
なひです.
西@九大です。
なかだです。
あおきです。
[#8650] [PATCH] Ruby/Tk — Koji Arai <JCA02266@...>
新井です。
新井です。
新井です。
新井です。
永井@知能.九工大です.
新井です。
永井@知能.九工大です.
新井です。
新井です。
[#8665] [mswin32] STDERR does not work during `_function. — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです.
金子です。
金子です。
[#8667] make symlinks around libruby.so in instruby.rb — akira yamada / やまだあきら <akira@...>
[#8692] [win] dir name — KANEKO Naoshi <wbs01621@...>
金子です。
小田@QNES です。
えぐち@エスアンドイー です。
小田@QNES です。
えぐち@エスアンドイー です。
なかだです。
小田@QNES です。
えぐち@エスアンドイー です。
小田@QNES です。
[#8705] [mswin32] 100% CPU usage when use sleep — Katsuyuki Komatsu <komatsu@...>
小松です。
まつもと ゆきひろです
小松です。
[#8722] [mswin32] Win32API — KANEKO Naoshi <wbs01621@...>
金子です。
小松です。
まつもと ゆきひろです
[#8741] Re: [ruby-list:19945] Re: array + empty string — Wakou Aoyama <wakou@...>
青山です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
ごとけんです
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
[#8742] [REQ] Array#each{|a,b,...|}, Array#shift/pop(num) — Kazunori NISHI <kazunori@...>
西@九大です。
まつもと ゆきひろです
西@九大です。
まつもと ゆきひろです
西@九大です。
まつもと ゆきひろです
えぐち@エスアンドイー です。
西@九大です。
あおきです。議論も好き。
西@九大です。
あおきです。
まつもと ゆきひろです
有馬です。
knuです。
まつもと ゆきひろです
これつぐです。
knuです。
まつもと ゆきひろです
あおきです。
まつもと ゆきひろです
In message "[ruby-dev:8792] Re: [REQ] Array#each{|a,b,...|}, Array#shift/pop(num)"
まつもと ゆきひろです
ごとけんです
ごとけんです
なかだです。
ごとけんです
[ruby-dev:8692] [win] dir name
金子です。
DOS/Win 環境でライブラリ find.rb を使用するとき "x:\\" の形式の
ディレクトリ名を処理できません。
以下のような修正を取り込んではいただけないでしょうか。
1.4.3 への差分です。
===============================================================
diff -u lib/find.rb.orig lib/find.rb
--- lib/find.rb.orig Tue Oct 12 18:11:29 1999
+++ lib/find.rb Sat Dec 18 00:58:37 1999
@@ -17,7 +17,9 @@
begin
for f in d
next if f =~ /^\.\.?$/
- if file == "/" then
+ if RUBY_PLATFORM =~ /djgpp|cygwin|mswin32/ and file =~ /^([\/\\]|[A-z]:[\/\\]?)$/ then
+ f = file + f
+ elsif file == "/" then
f = "/" + f
else
f = file + "/" + f
===============================================================
あとは mswin32 固有ですが、上と同様のディレクトリ名関連の処理の
修正です。
mswin32 の opendir が "x:" のような ':' で終了する形式や
2バイト目に '\\' を含む日本語ディレクトリ名を正しく処理できる
ようにしました。
日本語ディレクトリ名の判定には WinAPI の CharPrev() を使っている
ので、一応日本以外の環境でも問題はないつもりです。
===============================================================
diff -u -p win32/win32.c.orig win32/win32.c
--- win32/win32.c.orig Tue Nov 09 12:57:27 1999
+++ win32/win32.c Sun Dec 19 22:46:25 1999
@@ -1245,8 +1245,10 @@ opendir(char *filename)
// check to see if we\'ve got a directory
//
- if (stat (filename, &sbuf) < 0 ||
- sbuf.st_mode & _S_IFDIR == 0) {
+ if ((stat (filename, &sbuf) < 0 ||
+ sbuf.st_mode & _S_IFDIR == 0) &&
+ (!isalpha(filename[0]) || filename[1] != ':' || filename[2] != '\0' ||
+ ((1 << (filename[0] & 0x5f) - 'A') & GetLogicalDrives()) == 0)) {
return NULL;
}
@@ -1264,7 +1266,7 @@ opendir(char *filename)
strcpy(scanname, filename);
- if (index("/\\", *(scanname + strlen(scanname) - 1)) == NULL)
+ if (index("/\\:", *CharPrev(scanname, scanname + strlen(scanname))) == NULL)
strcat(scanname, "/*");
else
strcat(scanname, "*");
===============================================================
diff -u win32/Makefile.orig win32/Makefile
--- win32/Makefile.orig Wed Dec 08 01:18:25 1999
+++ win32/Makefile Sun Dec 19 22:56:31 1999
@@ -18,7 +18,7 @@
#LDFLAGS = $(CFLAGS) -Fm
XLDFLAGS =
#EXTLIBS =
-LIBS = advapi32.lib wsock32.lib $(EXTLIBS)
+LIBS = user32.lib advapi32.lib wsock32.lib $(EXTLIBS)
MISSING = crypt.obj alloca.obj win32.obj isinf.obj isnan.obj
LDSHARED =
DLDFLAGS =
===============================================================
以下はオマケ。
括弧が逆になっていました。
VC++ では標準ヘッダの内部に必要に応じて extern "C" が入っていて
特に必要ではないため、くくり自体を削除しました。
VC++ の <math.h> では template 使っているので全体を
extern "C" でくくると逆にエラーになるようです。
===============================================================
diff -u -p win32/win32.h.orig win32/win32.h
--- win32/win32.h.orig Fri Aug 13 14:45:19 1999
+++ win32/win32.h Mon Dec 20 22:10:07 1999
@@ -86,10 +86,6 @@
#undef finally
#undef leave
-#if defined(__cplusplus)
-}
-#endif
-
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -101,10 +97,6 @@
#include <sys/utime.h>
#include <io.h>
#include <malloc.h>
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
#define UIDTYPE int
#define GIDTYPE int
===============================================================
--
金子 尚史 (KANEKO Naoshi)
e-mail: wbs01621@mail.wbs.ne.jp