X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EC2493836C70 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1613348528; bh=dzX0ZxNZynCt1qlsJ4QPpO/WSgzQsZBjfMQ2ljX98DU=; h=Date:To:Subject:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=aOUS+MXADK5reMtNdZJ4h61Rjq3bKbjGqZg200/dhNuVGChZ9umkOBquR2jGGeGn3 xclInRsXq1eWKLRz6vIX35leULukQ8zViqoz0rhdah6mlRgqXaLDKSo4xdnKRX7r1P 0a87prQl0pBTpWeGtkKY330IzrjGTKl0NtyUwKDc= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 6D60F3857812 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-03.nifty.com 11F0Lg6B005475 X-Nifty-SrcIP: [118.243.85.178] Date: Mon, 15 Feb 2021 09:21:51 +0900 To: cygwin AT cygwin DOT com Subject: Re: Cygwin doesn't handle SIGWINCH properly in Windows Terminal Message-Id: <20210215092151.fca0260dfd3dea0a353575b7@nifty.ne.jp> In-Reply-To: <60298BB0.1070301@tlinx.org> References: <20210214174358 DOT f828f285a566846254c3c54a AT nifty DOT ne DOT jp> <60298BB0 DOT 1070301 AT tlinx DOT org> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.30; i686-pc-mingw32) Mime-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Takashi Yano via Cygwin Reply-To: Takashi Yano Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: cygwin-bounces AT cygwin DOT com Sender: "Cygwin" On Sun, 14 Feb 2021 12:44:32 -0800 L A Walsh wrote: > On 2021/02/14 00:43, Takashi Yano via Cygwin wrote: > > This is because cygwin console handles SIGWINCH when the input > > messages is processed. If the process does not call either read() > > or select(), SIGWINCH will not be sent. This is the long standing > > problem of the implementation and hard to fix. > > > > .... > > > > This seems to be a bug of console code. I will submit a patch > > for this issue. > > > --- > I'd be careful 'fixing' this, as it seems to work the same > way on linux / bash. > > I have this func setup on bash_profile & bashrc on > both cygwin and linux: > > # display new size of terminal when resized > : > showsize () {\ > declare s=$(stty size); s="(${s// /x})" ;\ > printf "%s" "$s${s//?/$'\b'}" ;\ > }; export -f showsize > > trap showsize SIGWINCH > ----- This has been working as expected without 'fix' because bash calls select() rather than read() when it waits for user input. The problem is in console read() and select() has been working. Moreover, the problem is only in console read() while pty does not have. > Of note, on linux, I didn't have to reset LINES/COLUMNS, > however, on cygwin, I note that I should. > > Oh well -- hmmm....is that a bug? What do you mean by "reset LINES/COLUMNS"? I am not sure what is the behaviour diffrence in Linux and cygwin you mentioned. -- Takashi Yano -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple