From: MINAMI H. <mi...@ch...> - 2002-08-26 07:38:42
|
南です。 ioctl(TIOCSWINSZ) の引数 struct winsize ですが、 現在は ws_col/ws_row のみ値を設定されています。 大抵の環境では winsize は struct winsize { unsigned short ws_row; unsigned short ws_col; unsigned short ws_xpixel; unsigned short ws_ypixel; }; だと思われるので、ws_xpixel/ypixel には未初期化の値が使われてることになります。 しかし、端末の大きさとしてこれらの値を信用するアプリケーションが存在しており、 このため環境によっては問題がおきているようです。 とりあえず下のパッチで slrnface(http://dave.willfork.com/slrnface/) は動作するらしいのですが、これでは問題のおきる環境がありましたら教えてください。 Index: mlterm/ml_pty.c =================================================================== RCS file: /cvsroot/mlterm/mlterm/mlterm/ml_pty.c,v retrieving revision 1.3 diff -u -B -r1.3 ml_pty.c --- mlterm/ml_pty.c 28 Jul 2002 15:55:39 -0000 1.3 +++ mlterm/ml_pty.c 26 Aug 2002 07:02:17 -0000 @@ -167,6 +167,8 @@ ws.ws_col = cols ; ws.ws_row = rows ; + ws.ws_xpixel = 0 ; + ws.ws_ypixel = 0 ; if( ioctl( pty->master , TIOCSWINSZ , &ws) < 0) { |