[#41278] [BUG:1.9] BINARY should not be ASCII-compatible — Yugui <yugui@...>

Yuguiです。

15 messages 2010/05/11

[#41407] [Bug #3339] win32ole test failure — Usaku NAKAMURA <redmine@...>

Bug #3339: win32ole test failure

20 messages 2010/05/25
[#41411] Re: [Bug #3339] win32ole test failure — Masaki Suketa <masaki.suketa@...> 2010/05/25

助田です。

[#41412] Re: [Bug #3339] win32ole test failure — "U.Nakamura" <usa@...> 2010/05/25

こんにちは、なかむら(う)です。

[ruby-dev:41228] Re: io/console IO#raw error when io is closed in the block

From: Tanaka Akira <akr@...>
Date: 2010-05-08 14:24:14 UTC
List: ruby-dev #41228
2010年5月8日20:59 Tanaka Akira <akr@fsij.org>:

> NEWS に
>
>    * IO#raw
>    * IO#raw {|io| }
>
> と載っているのに気がついてしまったのですが、
> もしかして、IO#raw にブロックを与えないとエラーになるのは意図されざる挙動
> なんでしょうか?

ブロック無しのが NEWS から消えて、IO#raw {|io| } は内部で dup して確実に
状態を戻すようになったようですが、これは困ります。

例にあげた PTY の用法だと、戻したくないんです。

そして、親プロセスでは、PTY の slave tty を open しておきたくありません。
もし、open したままだと、親プロセスが master tty から読み出して
EOF が検知できないからです。
(EOF じゃなくてなにかエラーになるかもしれませんが)
これが IO#raw が裏に fd を隠し持っていられると、うまくいきません。

そんなわけで、slave tty を親プロセスでは close し、かつ、
端末は子プロセスからのために raw のままにする、
というのが不可能な気がするんですが、なにか方法はありますか?
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread