[#19685] [Oniguruma] Version 1.8.1 — "K.Kosako" <kosako@...>

ftp.ruby-lang.orgに、onigd20030301.tar.gzを置きました。

92 messages 2003/03/01
[#19687] Re: [Oniguruma] Version 1.8.1 — matz@... (Yukihiro Matsumoto) 2003/03/02

まつもと ゆきひろです

[#19688] Re: [Oniguruma] Version 1.8.1 — Tanaka Akira <akr@...17n.org> 2003/03/02

In article <1046613803.268414.3770.nullmailer@picachu.netlab.jp>,

[#19748] [Oniguruma] Version 1.8.2 — "K.Kosako" <kosako@...> 2003/03/05

Tanaka Akiraさんの<871y1pu8am.fsf@serein.a02.aist.go.jp>から

[#19749] Re: [Oniguruma] Version 1.8.2 — "Akinori MUSHA" <knu@...> 2003/03/05

At Wed, 5 Mar 2003 18:07:17 +0900,

[#19750] Re: [Oniguruma] Version 1.8.2 — "K.Kosako" <kosako@...> 2003/03/05

Akinori MUSHAさんの<86r89mi39s.wl%knu@iDaemons.org>から

[#19793] Re: [Oniguruma] Version 1.8.2 — "Akinori MUSHA" <knu@...> 2003/03/11

At Wed, 5 Mar 2003 18:18:31 +0900,

[#19808] [Oniguruma] Version 1.8.4 — "K.Kosako" <kosako@...> 2003/03/12

Akinori MUSHAさんの<86bs0iqoif.wl%knu@iDaemons.org>から

[#19825] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/16

In article <20030312044626.2D879C2@helium.ruby-lang.org>,

[#19858] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/20

In article <20030318015042.DCBB859A@helium.ruby-lang.org>,

[#19866] Re: [Oniguruma] Version 1.8.4 — "K.Kosako" <kosako@...> 2003/03/21

Tanaka Akiraさんの<87llzavfl9.fsf@serein.a02.aist.go.jp>から

[#19868] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/21

In article <20030321040221.EC03C5AA@helium.ruby-lang.org>,

[#19869] Re: [Oniguruma] Version 1.8.4 — matz@... (Yukihiro Matsumoto) 2003/03/21

まつもと ゆきひろです

[#19870] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/21

In article <1048256492.877945.30145.nullmailer@picachu.netlab.jp>,

[#19873] Re: [Oniguruma] Version 1.8.4 — matz@... (Yukihiro Matsumoto) 2003/03/21

まつもと ゆきひろです

[#19912] Re: [Oniguruma] Version 1.8.4 — TAKAHASHI Masayoshi <takahashi@...> 2003/03/26

高橋征義です。

[#19913] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/26

In article <20030326.151120.41647198.takahashi@twinspark.co.jp>,

[#19920] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/27

In article <008c01c2f360$9ac1b030$85222fc0@sarion.co.jp>,

[#19698] 1.8.0 preview2 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

19 messages 2003/03/03
[#19716] [1.8.0 preview2] HP-UX 11.11 — WATANABE Tetsuya <tetsu@...> 2003/03/04

渡辺哲也です。

[#19718] Re: [1.8.0 preview2] HP-UX 11.11 — WATANABE Hirofumi <eban@...> 2003/03/04

わたなべです。

[#19751] (1.8.0-preview2) Proc#call — Fukumoto Atsushi <fukumoto@...>

1.8.0-preview2 で、 Proc#call の動作がへんです。

51 messages 2003/03/06
[#19752] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/07

なかだです。

[#19754] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/07

まつもと ゆきひろです

[#19755] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/07

なかだです。

[#19756] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/07

まつもと ゆきひろです

[#19770] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/08

なかだです。

[#19786] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/10

まつもと ゆきひろです

[#19787] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/10

なかだです。

[#19788] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/10

まつもと ゆきひろです

[#19789] Re: (1.8.0-preview2) Proc#call — Koji Arai <JCA02266@...> 2003/03/11

新井です。

[#19797] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/11

まつもと ゆきひろです

[#19798] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/03/11

[#19799] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/11

[#19809] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/03/12

[#20090] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/04/25

まつもと ゆきひろです

[#20101] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/04/28

[#20102] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/04/28

まつもと ゆきひろです

[#20148] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/05/03

[#20179] Re: (1.8.0-preview2) Proc#call — m_seki@... 2003/05/07

[#20180] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/05/07

まつもと ゆきひろです

[#20196] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/05/17

[#20200] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/05/18

まつもと ゆきひろです

[#19865] dl in $SAFE=4 — Minero Aoki <aamine@...>

あおきです。

15 messages 2003/03/21
[#19871] Re: dl in $SAFE=4 — matz@... (Yukihiro Matsumoto) 2003/03/21

まつもと ゆきひろです

[ruby-dev:19772] Re: IO#initialize is not called from IO.pipe and IO.popen

From: nobu.nakada@...
Date: 2003-03-08 18:16:12 UTC
List: ruby-dev #19772
なかだです。

At Sun, 9 Mar 2003 00:40:59 +0900,
Tanaka Akira wrote:
> というように、IO.pipe や IO.popen は IO#initialize を呼びません。

Rubyレベルで置き換えられるということは、初期化に必要なパラメー
タもRubyレベルに露出するということです。

IO.popenは現在djgpp, human68k, VMSでpopen(3)を使っているために
FILE*をどう渡すか考えないといけません。というかFILE*のラッパー
がIOなわけですが。

とりあえずIO.pipeのほうだけ。IO#initializeでmodeをFixnumで指定
できるように拡張してます。


Index: io.c
===================================================================
RCS file: //sharui/cvs/ruby/src/ruby/io.c,v
retrieving revision 1.189
diff -u -2 -p -r1.189 io.c
--- io.c	4 Mar 2003 07:04:08 -0000	1.189
+++ io.c	8 Mar 2003 17:51:11 -0000
@@ -2828,6 +2828,11 @@ rb_io_initialize(argc, argv, io)
     fd = NUM2INT(fnum);
     if (argc == 2) {
-	SafeStringValue(mode);
-	flags = rb_io_mode_modenum(RSTRING(mode)->ptr);
+	if (FIXNUM_P(mode)) {
+	    flags = FIX2LONG(mode);
+	}
+	else {
+	    SafeStringValue(mode);
+	    flags = rb_io_mode_modenum(RSTRING(mode)->ptr);
+	}
     }
     else {
@@ -3508,10 +3513,18 @@ rb_f_syscall(argc, argv)
 }
 
+static VALUE io_new_instance _((VALUE));
+static VALUE
+io_new_instance(args)
+    VALUE args;
+{
+    return rb_class_new_instance(2, (VALUE*)args, rb_cIO);
+}
+
 static VALUE
 rb_io_s_pipe()
 {
 #ifndef __human68k__
-    int pipes[2];
-    VALUE r, w;
+    int pipes[2], state;
+    VALUE r, w, args[2];
 
 #ifdef _WIN32
@@ -3522,6 +3535,21 @@ rb_io_s_pipe()
 	rb_sys_fail(0);
 
-    r = prep_stdio(rb_fdopen(pipes[0], "r"), FMODE_READABLE, rb_cIO);
-    w = prep_stdio(rb_fdopen(pipes[1], "w"), FMODE_WRITABLE|FMODE_SYNC, rb_cIO);
+    args[0] = INT2NUM(pipes[0]);
+    args[1] = INT2FIX(O_RDONLY);
+    r = rb_protect(io_new_instance, (VALUE)args, &state);
+    if (state) {
+	close(pipes[0]);
+	close(pipes[1]);
+	rb_jump_tag(state);
+    }
+    args[0] = INT2NUM(pipes[1]);
+    args[1] = INT2FIX(O_WRONLY);
+    w = rb_protect(io_new_instance, (VALUE)args, &state);
+    if (state) {
+	close(pipes[1]);
+	if (!NIL_P(r)) rb_io_close(r);
+	rb_jump_tag(state);
+    }
+    rb_io_synchronized(RFILE(w)->fptr);
 
     return rb_assoc_new(r, w);


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

In This Thread