From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_00,RCVD_NUMERIC_HELO, SPF_HELO_PASS,SPF_PASS autolearn=no version=3.2.5 X-Injected-Via-Gmane: http://gmane.org/ To: sisyphus@lists.altlinux.org From: "Alexei V. Mezin" Date: Tue, 10 Dec 2013 01:50:53 +0400 Message-ID: References: <201312070839.13411@ruslandh> <1995782.UWWhoLhP5i@asy-nb.localdomain> <52A43345.8050306@altlinux.ru> <20131209212408.GA917@altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 188.244.39.237 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:26.0) Gecko/20100101 Thunderbird/26.0 In-Reply-To: <20131209212408.GA917@altlinux.org> Subject: Re: [sisyphus] =?koi8-r?b?4SDEwdfOzyDVIM7B0yBtYyDSwdrV3snM09EuLi4=?= X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Sisyphus discussions List-Id: ALT Linux Sisyphus discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Dec 2013 21:51:13 -0000 Archived-At: List-Archive: List-Post: 10.12.2013 01:24, Dmitry V. Levin пишет: > Если не приходит SIGWINCH, значит, konsole не выполняет > (или неправильно выполняет) TIOCSWINSZ. > > Косвенным подтверждением является неизменность вывода команды > $ stty -a |grep rows > до и после resize. Запускаю konsole через меню/кнопку на панели/Win-R. Ресайз в ней глючит, тестовая программа не показывает прихода SIGWINCH и mc глючит. Но! В одной консоли [alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 54; columns 162; line = 0; [alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 45; columns 140; line = 0; [alexei@bigbear ~]$ mc [alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 45; columns 140; line = 0; [alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 45; columns 140; line = 0; То есть сначала работало, после запуска mc сломалось. В том же окне другая вкладка: alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 51; columns 172; line = 0; [alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 55; columns 185; line = 0; [alexei@bigbear ~]$ mc [alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 58; columns 192; line = 0; [alexei@bigbear ~]$ stty -a |grep rows speed 38400 baud; rows 50; columns 159; line = 0; То есть stty все изменение размеров видит! Но mc в ней глючит. Кстати, тот же mc глючит очень странно. При увеличении размеров окна mc не увеличивается, но после C-l строка меню и подсказки (самая верхняя и самая нижняя) вырастают на всю ширину, а панели так и остаются в старых размерах. При уменьшении размеров окна перерисовка mc вообще разрушается. Если через Win-R запустить xterm, а из него konsole, то все работает. > > Можете попробовать поотлаживать, например, > $ strace -feioctl -o'|grep TIOCSWINSZ' konsole Запуск из konsole: [alexei@bigbear ~]$ strace -feioctl -o'|grep TIOCSWINSZ' konsole 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, {ws_row=0, ws_col=0, ws_xpixel=0, ws_ypixel=0}) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, {ws_row=53, ws_col=155, ws_xpixel=0, ws_ypixel=0}) = 0 8503 ioctl(0, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fff135a3dc0) = 0 8503 ioctl(0, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fff135a3d50) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e90) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e90) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e10) = 0 8503 ioctl(0, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fff135a3d50) = 0 8567 ioctl(6, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffa0159410) = 0 8567 ioctl(0, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fff49eda4b0) = 0 8567 ioctl(0, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fff49eda440) = 0 8567 ioctl(0, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e90) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e90) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e90) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e90) = 0 8501 ioctl(9, SNDRV_TIMER_IOCTL_STATUS or TIOCSWINSZ, 0x7fffafa65e90) = 0 Событие происходит на каждый реальный ресайз окна, но внутри этого окна SIGWINCH не ловится, и mc не работает.