[#21809] lib/test/unit/ui/tk/testrunner.rb — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
永井@知能.九工大です.
なかだです。
永井@知能.九工大です.
なかだです。
永井@知能.九工大です.
なかだです。
こんにちは、なかむら(う)です。
永井@知能.九工大です.
なかだです。
永井@知能.九工大です.
[#21830] pty on FreeBSD — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#21846] StringIO#path — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#21876] get_last_error or getLastError by DL::Importable — Take_tk <ggb03124@...>
たけ(tk)です。
[#21883] right hand Regexp — Koji Arai <JCA02266@...>
新井です。
[#21899] core dump in rb_hash_aset — Tanaka Akira <akr@...17n.org>
% ruby -e 'h = {}
まつもと ゆきひろです
In article <1068753744.644627.6908.nullmailer@picachu.netlab.jp>,
[#21932] rough / tabs.rb — Minero Aoki <aamine@...>
青木です。
[#21939] StringIO.new("").read — Tanaka Akira <akr@...17n.org>
ふと気がついたのですが、
[#21942] Zlib::GzipReader#read — Tanaka Akira <akr@...17n.org>
ふと気がついたのですが、
[#21943] IO#read — Tanaka Akira <akr@...17n.org>
ふと。
In article <87u1523sjj.fsf@serein.a02.aist.go.jp>,
なかだです。
In article <200311250059.hAP0xSYw004490@sharui.nakada.kanuma.tochigi.jp>,
[#21946] Re: [ruby-cvs] ruby, ruby/lib, ruby/test/fileutils: * lib/fileutils.rb (fu_same?): check by inode instead of path name, to detect two hard links pointing to the same content. — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
Siena. です。
青木です。それにしても凄い Subject だ。
[#22000] purge pthread at configure — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#22013] HTTP_PROXY — Tanaka Akira <akr@...17n.org>
ふと
[#22025] --enable-pthread on FreeBSD — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
[#22042] ENV["path"].tainted? — Tanaka Akira <akr@...17n.org>
ENV["path"] の値が
まつもと ゆきひろです
In article <1069748137.095435.3356.nullmailer@picachu.netlab.jp>,
斜め読みですが、
まつもと ゆきひろです
In message <1070234162.951847.24883.nullmailer@picachu.netlab.jp>
[#22057] drb/drb.rb document — Minero Aoki <aamine@...>
青木です。
[#22071] Dir.glob と Shjift_JIS について — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
はじめまして。山本といいます。
Siena. です。
> 山本さんのパッチがうまく当たらず手パッチしたので、念のため何度か
Siena. です。
こんにちは、山本です。
山本です。
山本です。
山本です。
山本です。glob_helperをリファクタリングしてみました。
なかだです。
山本です。
なかだです。
山本です。
Siena. です。
山本です。
山本です。
まつもと ゆきひろです
山本です。
山本です。パッチを送ります。
山本です。
山本です。
山本です。
山本です。
まつもと ゆきひろです
>すいません。パッチを出す時にはいつもどの時点のソースに対する
まつもと ゆきひろです
>|すみません、1.8.1に対してです。
まつもと ゆきひろです
こんにちは、山本です。
まつもと ゆきひろです
山本です。
山本です。
山本です。[ruby-dev:22470]にバグがあったので修正しました。
>山本です。[ruby-dev:22470]にバグがあったので修正しました。
まつもと ゆきひろです
山本です。
山本です。
In message <20040102230135.027CDAF8.ocean@m2.ccsnet.ne.jp>
山本です。
まつもと ゆきひろです
山本です。
山本です。
山本です。
なかだです。
山本です。
なかだです。
山本です。
[ruby-dev:22067] exit value as boolean
なかだです。
今のところ、可搬性のある形で成功/失敗を親プロセスに通知しようと
すると、
success ? exit : abort
のようにしなければなりません。そこで、exit/exit!で、true/false
を受け付けるようにするってのはどうでしょうか。
また、systemで成功=0でハードコードされているのも望ましくないの
では。
* eval.c (rb_f_exit), process.c (rb_f_exit_bang): treat true as
success, false as failure.
* eval.c (rb_f_abort, rb_thread_switch), process.c (rb_f_system): use
ANSI macro instead of hard coded value.
Index: eval.c
===================================================================
RCS file: /cvs/ruby/src/ruby/eval.c,v
retrieving revision 1.595
diff -u -2 -p -r1.595 eval.c
--- eval.c 27 Nov 2003 13:08:27 -0000 1.595
+++ eval.c 27 Nov 2003 14:04:15 -0000
@@ -3896,5 +3896,15 @@ rb_f_exit(argc, argv)
rb_secure(4);
if (rb_scan_args(argc, argv, "01", &status) == 1) {
- istatus = NUM2INT(status);
+ switch (status) {
+ case T_TRUE:
+ istatus = EXIT_SUCCESS;
+ break;
+ case T_FALSE:
+ istatus = EXIT_FAILURE;
+ break;
+ default:
+ istatus = NUM2INT(status);
+ break;
+ }
}
else {
@@ -3923,5 +3933,5 @@ rb_f_abort(argc, argv)
StringValue(argv[0]);
rb_io_puts(argc, argv, rb_stderr);
- terminate_process(1, RSTRING(argv[0])->ptr, RSTRING(argv[0])->len);
+ terminate_process(EXIT_FAILURE, RSTRING(argv[0])->ptr, RSTRING(argv[0])->len);
}
return Qnil; /* not reached */
@@ -8408,5 +8418,5 @@ rb_thread_switch(n)
ruby_current_node = th_raise_node;
error_print();
- terminate_process(1, 0, 0);
+ terminate_process(EXIT_FAILURE, 0, 0);
break;
case RESTORE_NORMAL:
Index: process.c
===================================================================
RCS file: /cvs/ruby/src/ruby/process.c,v
retrieving revision 1.89
diff -u -2 -p -r1.89 process.c
--- process.c 4 Nov 2003 09:13:57 -0000 1.89
+++ process.c 27 Nov 2003 14:16:58 -0000
@@ -31,4 +31,7 @@
#include <ctype.h>
+#ifndef EXIT_SUCCESS
+#define EXIT_SUCCESS 0
+#endif
#ifndef EXIT_FAILURE
#define EXIT_FAILURE 1
@@ -879,5 +882,15 @@ rb_f_exit_bang(argc, argv, obj)
rb_secure(4);
if (rb_scan_args(argc, argv, "01", &status) == 1) {
- istatus = NUM2INT(status);
+ switch (status) {
+ case T_TRUE:
+ istatus = EXIT_SUCCESS;
+ break;
+ case T_FALSE:
+ istatus = EXIT_FAILURE;
+ break;
+ default:
+ istatus = NUM2INT(status);
+ break;
+ }
}
else {
@@ -953,7 +966,4 @@ rb_f_system(argc, argv)
status = do_spawn(RSTRING(cmd)->ptr);
last_status_set(status, 0);
-
- if (status == 0) return Qtrue;
- return Qfalse;
#elif defined(__human68k__) || defined(__DJGPP__) || defined(_WIN32)
volatile VALUE prog = 0;
@@ -991,5 +1001,4 @@ rb_f_system(argc, argv)
last_status_set(status == -1 ? 127 : status, 0);
#endif
- return status == 0 ? Qtrue : Qfalse;
#elif defined(__VMS)
VALUE cmd;
@@ -1012,7 +1021,4 @@ rb_f_system(argc, argv)
status = system(RSTRING(cmd)->ptr);
last_status_set((status & 0xff) << 8, 0);
-
- if (status == 0) return Qtrue;
- return Qfalse;
#else
volatile VALUE prog = 0;
@@ -1065,8 +1071,9 @@ rb_f_system(argc, argv)
}
- if (NUM2INT(rb_last_status) == 0)
- return Qtrue;
- return Qfalse;
+ status = NUM2INT(rb_last_status);
#endif
+
+ if (status == EXIT_SUCCESS) return Qtrue;
+ return Qfalse;
}
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦