[#24661] MANIFEST — WATANABE Hirofumi <eban@...>
わたなべです。
[#24670] IO.popen(["echo", "aaa"]) failure — Tanaka Akira <akr@...17n.org>
make test-all で昨日は起きなかったエラーが出るので調べたところ、
わたなべです。
まつもと ゆきひろです
[#24672] gc.c: structure has no member named `IA64_BSPSTORE' — akira yamada / やまだあきら <akira@...>
Linux/ia64環境ではgc.cで
[#24698] NKF(nkf2)を1.8ブランチに入れました — "NARUSE, Yui" <naruse@...>
naruseです。
こんにちは。
naruseです。
こんにちは。
[#24708] String#gsub causes core dump — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
[#24716] Re: [ruby-cvs] ruby/lib, ruby/ext/socket, ruby: * string.c (str_gsub): should have removed rb_str_unlocktmp(str). — Tanaka Akira <akr@...17n.org>
In article <20041104234342.9C575C6718@lithium.ruby-lang.org>,
まつもと ゆきひろです
[#24720] メール関係ライブラリの標準添付について — MoonWolf <moonwolf@...>
MoonWolfです。
まつもと ゆきひろです
MoonWolfです。
高橋征義です。
naruseです。
[#24728] sysvipcをlibに取り込みたい — MoonWolf <moonwolf@...>
MoonWolfです。
[#24740] Ruby 1.8.2 preview3 — Yukihiro Matsumoto <matz@...>
Hello,
[#24748] "\000\000\000\001".unpack("N") returns [0] — GOTOU Yuuzou <gotoyuzo@...>
Ruby 1.8で、Ruby 1.9のtest/ruby/test_pack.rbを試すとエラーに
まつもと ゆきひろです
こんにちは、なかむら(う)です。
こんにちは、なかむら(う)です。
[#24771] Re: [ruby-cvs] ruby/lib, ruby/ext/socket, ruby: * dir.c (rb_glob2): do not allocate buffer from heap to avoid — nobu@...
なかだです。
まつもと ゆきひろです
まつもと ゆきひろです
[#24781] リリーススクリプト — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
[#24785] cannot require tk — Minero Aoki <aamine@...>
青木です。
[#24804] Re: まつもとさんの負担を減らすために、何ができるだろう — "URABE Shyouhei aka.mput" <root@...>
mput です。 ruby-dev に移動します。
In article <2D6284E3-351D-11D9-B7EF-000393735AAE@mput.dip.jp>,
mput です。
高橋征義です。
mput です。
[#24828] test_logger が -r gtk2 の時に失敗 — Kazuhiko <kazuhiko@...>
かずひこです。
まつもと ゆきひろです
[#24834] Process.getrlimit and Process.setrlimit — Tanaka Akira <akr@...17n.org>
Process.getrlimit と Process.setrlimit が欲しいので実装してみました。
なかだです。
In article <20041117.151309.21595195.taca@back-street.net>,
西山和広です。
In article <20041117154831.080F.ZN@mbf.nifty.com>,
まつもと ゆきひろです
In article <1100706032.176617.3333.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
In article <1100749113.608312.10170.nullmailer@x31.priv.netlab.jp>,
[#24848] ERROR: install-doc — WATANABE Hirofumi <eban@...>
わたなべです。
[#24850] ChangeLog for — Tanaka Akira <akr@...17n.org>
[ruby-dev:24635] が commit log にも ChangeLog にも記述されないで取り込
In article <1100493656.630060.15787.nullmailer@x31.priv.netlab.jp>,
順序を変えて引用しています。
[#24873] A Float-related race in GC? — akira yamada / やまだあきら <akira@...>
[#24922] Re: imported Oni Guruma 3.4.0 — "K.Kosako" <kosako@...>
> 以下のパッチで segv はしなくなったのですが make test に失敗しました。
[#24924] [Oniguruma] patch for 3.4.0 — "K.Kosako" <kosako@...>
3.4.0のimport後、今日までに発見された
まつもと ゆきひろです
[#24965] sync and stdio buffering — Tanaka Akira <akr@...17n.org>
ちょっとした思いつきなのですが、
In article <87hdnc8pcq.fsf@serein.a02.aist.go.jp>,
まつもと ゆきひろです
In article <1101525226.648183.765.nullmailer@x31.priv.netlab.jp>,
In article <87653s7ye5.fsf@serein.a02.aist.go.jp>,
まつもと ゆきひろです
[#24974] Re: [ruby-cvs] ruby: * io.c (rb_io_initialize): should retrieve flags from copying file — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
まつもと ゆきひろです
[#24981] jcode tr? : from.upto(to) { |c| a.push c } — Fumitoshi UKAI <ukai@...>
migemo で http://bugs.debian.org/283192 というバグレポートをうけました。
[#24993] rb_io_sysread dumps core [BUG] rb_sys_fail() - errno == 0 — Tietew <tietew-ml-ruby-dev@...>
ソケットとスレッドを大量に使うアプリ(具体的には IRCbot です)を
なかだです。
まつもと ゆきひろです
[#25003] IO#flush dumps core again — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
なかだです。
まつもと ゆきひろです
In article <1101836040.635395.27476.nullmailer@x31.priv.netlab.jp>,
In article <1101878558.979715.1359.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
In article <1101888165.570792.4192.nullmailer@x31.priv.netlab.jp>,
In article <1102293033.356112.2288.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
In article <1102324875.961165.10916.nullmailer@x31.priv.netlab.jp>,
In article <87sm6jznqj.fsf@serein.a02.aist.go.jp>,
[ruby-dev:25004] Re: IO#flush dumps core again
なかだです。
At Tue, 30 Nov 2004 23:59:59 +0900,
Tanaka Akira wrote in [ruby-dev:25003]:
> 次のようにすると core を吐きます。
>
> % ./ruby -ve '
> r, w = IO.pipe
> w.sync = false
> w << "a" * 4096
> w.flush
> pid = fork {
> w.close
> sleep 0.1
> Process.kill("USR1", Process.ppid)
> r.sysread(4096)
> sleep 0.1
> r.sysread(1000)
> }
> r.close
> w << "b"
> trap("USR1") { callcc {|k| $k = k } }
> w.flush
> w.close
> $k.call
> '
> ruby 1.9.0 (2004-11-30) [i686-linux]
> -e:17: [BUG] Segmentation fault
> ruby 1.9.0 (2004-11-30) [i686-linux]
IO#flushの問題というよりは、trapを跨いだContinuationの呼び出し
が問題だと思うんですが、あってるでしょうか。
かなり苦し紛れですが。
Index: eval.c
===================================================================
RCS file: /cvs/ruby/src/ruby/eval.c,v
retrieving revision 1.737
diff -U2 -p -d -r1.737 eval.c
--- eval.c 30 Nov 2004 09:33:50 -0000 1.737
+++ eval.c 30 Nov 2004 16:12:23 -0000
@@ -9681,5 +9681,5 @@ rb_trap_eval(cmd, sig, safe)
THREAD_COPY_STATUS(curr_thread, &save);
rb_thread_ready(curr_thread);
- PUSH_TAG(PROT_NONE);
+ PUSH_TAG(PROT_TOP);
PUSH_ITER(ITER_NOT);
if ((state = EXEC_TAG()) == 0) {
@@ -11917,4 +11917,8 @@ rb_thread_trap_eval(cmd, sig, safe)
{
rb_thread_critical = 0;
+ if (curr_thread == main_thread) {
+ rb_trap_eval(cmd, sig, safe);
+ return;
+ }
if (!rb_thread_dead(curr_thread)) {
if (THREAD_SAVE_CONTEXT(curr_thread)) {
@@ -12261,5 +12265,5 @@ rb_callcc(self)
rb_thread_t th;
volatile rb_thread_t th_save;
- struct tag *tag;
+ struct tag *tag, *top = 0;
struct RVarmap *vars;
@@ -12270,6 +12274,8 @@ rb_callcc(self)
for (tag=prot_tag; tag; tag=tag->prev) {
scope_dup(tag->scope);
+ if (!top && tag->tag == PROT_TOP) top = tag;
}
th->thread = curr_thread->thread;
+ th->join = (void *)top;
for (vars = ruby_dyna_vars; vars; vars = vars->next) {
@@ -12309,8 +12315,18 @@ rb_cont_call(argc, argv, cont)
{
rb_thread_t th = rb_thread_check(cont);
+ struct tag *tag, *top = 0;
if (th->thread != curr_thread->thread) {
rb_raise(rb_eRuntimeError, "continuation called across threads");
}
+ for (tag=prot_tag; tag; tag=tag->prev) {
+ if (tag->tag == PROT_TOP) {
+ top = tag;
+ break;
+ }
+ }
+ if ((void *)th->join != (void *)top) {
+ rb_raise(rb_eRuntimeError, "continuation called across trap");
+ }
switch (argc) {
case 0:
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦