[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FDclone-users:00949] Re: ツリーで移動中にSEGV
- Subject: [FDclone-users:00949] Re: ツリーで移動中にSEGV
- From: Takashi SHIRAI <shirai@unixusers.net>
- Date: Sun, 11 Mar 2012 17:28:34 +0900
しらいです。
In Message-Id <20120310184301.7301687C001@yuka.unixusers.net>
Takashi SHIRAI <shirai@unixusers.net>writes:
> しらいです。
> 確かに FD-3.00j の release 時には動いていたのですが、その
> 後の version up により、現在の最新版 1.7.11 では幾分支障があ
> るようです。
一部のみですが自己解決しました。
> 1.tcsetpgrp() が freeze する。
> 2.子 process に制御端末を渡せない。
この二つですが、実は tcsetpgrp() は正常に機能していました。
ioctl() で TIOCSPGRP request を使っていたのがまずかったよう
で、tcsetpgrp() に置換えたら動きました。
glibc でも tcsetpgrp() は単なる ioctl() のラッパなんですが、
Cygwin では何か特殊な処理をしてるんでしょうかね。ioctl() の
方だと freeze したり EINVAL 返したりと全く機能しません。
termcap の件と言い、こうして次々と legacy interface を駆逐
していくつもりなんでしょうか。それならそれでどこかで言及して
おいて欲しいものです。
> 出力の方も時折 block されるので、コマンドプロンプト以外の
> 端末を使う場合は適宜何かキー入力をして、出力を促してやる必要
> があります。
> 多分全然使いものにならないので、標準の cygwin.bat を使って
> コマンドプロンプト上の bash を起動して下さい。
ということで、回避不能な支障はこれのみになりました。けど、
O_NONBLOCK も効かないので状況はさっぱりです。取り敢えず、次
の release は 1.7.11 ではなく 1.7.9 対応ということで出します。
しらい たかし