ごとうゆうぞうです。 In message <E143VCd-0001y1-00 / ev.netlab.zetabits.co.jp>, `matz / zetabits.com (Yukihiro Matsumoto)' wrote: > そう信じてました。どういう原理で動いてるんでしょう? > でも、追求する元気はなかったりして。 > # かなり消耗しているらしい。 追求しようと思ったのですが、ひとまず手元の NetBSD では clearerr しないと動きませんでした。 IO#clearerr があったほうが嬉しいように思います。 --- io.c.orig Mon Nov 27 18:23:21 2000 +++ io.c Wed Dec 6 14:29:01 2000 @@ -395,6 +395,16 @@ } static VALUE +rb_io_clearerr(io) + VALUE io; +{ + OpenFile *fptr; + GetOpenFile(io, fptr); + clearerr(fptr->f); + return Qnil; +} + +static VALUE rb_io_sync(io) VALUE io; { @@ -3417,6 +3427,7 @@ rb_define_method(rb_cIO, "pos=", rb_io_set_pos, 1); rb_define_method(rb_cIO, "eof", rb_io_eof, 0); rb_define_method(rb_cIO, "eof?", rb_io_eof, 0); + rb_define_method(rb_cIO, "clearerr", rb_io_clearerr, 0); rb_define_method(rb_cIO, "close", rb_io_close_m, 0); rb_define_method(rb_cIO, "closed?", rb_io_closed, 0); -- ごとうゆうぞう