delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2021/02/16/15:50:33

X-Recipient: archive-cygwin AT delorie DOT com
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 9D647384B110
Authentication-Results: sourceware.org;
dmarc=none (p=none dis=none) header.from=towo.net
Authentication-Results: sourceware.org; spf=none smtp.mailfrom=towo AT towo DOT net
Subject: Re: Cygwin doesn't handle SIGWINCH properly in Windows Terminal
To: cygwin AT cygwin DOT com
References: <CABPP8W9h=LzUGf=JP-2x3SjrBPh8NJuoRbXzRU94b-WfBt94yw AT mail DOT gmail DOT com>
<20210214174358 DOT f828f285a566846254c3c54a AT nifty DOT ne DOT jp>
<20210216193154 DOT fd8d6268ce749983f565b058 AT nifty DOT ne DOT jp>
<20210216203134 DOT fd2dcfe17124a907d4be9eee AT nifty DOT ne DOT jp>
<73b76a73-2243-0e9b-aac3-004fbed0133a AT SystematicSw DOT ab DOT ca>
<20210217053758 DOT 787d1316e900fe914a4e29a8 AT nifty DOT ne DOT jp>
From: Thomas Wolff <towo AT towo DOT net>
Message-ID: <d2ef5af4-e976-dd25-39b3-b8acdc118922@towo.net>
Date: Tue, 16 Feb 2021 21:50:26 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.7.1
MIME-Version: 1.0
In-Reply-To: <20210217053758.787d1316e900fe914a4e29a8@nifty.ne.jp>
X-Provags-ID: V03:K1:wzvEuUhcIQXUqEx0bsm/SbKNqLIDTW1eeOR8CIB3oMOCNzRd1jR
bouTTgsXt2pIzHiAv7u0ay3cLoMJ7y0EDwv2ZB4B8il4hxpJsiqSXnL0G6zK2FEUe2DrBG1
EwZ1EAVliROo3Uf9g7GffotyuHWwN1PVyeYyVIFOiH26SsEWSRNS4AdNZhRYlcWNnvnrfVA
9C6ePuQlQHmmKQFvILiYg==
X-UI-Out-Filterresults: notjunk:1;V03:K0:EZDs2og68uE=:+72ftVozIyA8jxhYzc0pxV
4DI1cc7+Ytf359BNsWqOR7QEmW+CAwAM0zM7Ky1Af8QuMphEK80dJko7QIfv1VJETOutbD/t/
SSANDZewPzDii63CggfFWkCM0bkXVfK3GFE44uGsxRMf9YgCI2QSGcAaSjgKl+SxB0a1Kml1a
YssaRFe+YysuQBijtC5BKp1uWPX/zwZOead1YH/OJAQd3pcmE+rxWwuUpSllHHNvjpUHQlbjH
eDra5nE4vau0B4O5yznLGJnftW3HxULVgvOuYvnICSVQgcYfszxqK3mXPYsggwmVaZf26Yeut
4Tc268BNwFydzG+5pp17ndfDnfGVaDRHyHm+rzUPgo7t/bTMEpQw1iwqK6CGIYvyk+7veTXQa
NM2HjNe+1kKaanyO+71ZARe3NB4z+LyCeNVyBJv2G3EvpafJ53aD/zXgZ3QBP
X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS,
KAM_LAZY_DOMAIN_SECURITY, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,
SPF_HELO_NONE, SPF_NONE, TXREP autolearn=no 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
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-request AT cygwin DOT com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe>
Errors-To: cygwin-bounces AT cygwin DOT com
Sender: "Cygwin" <cygwin-bounces AT cygwin DOT com>

Am 16.02.2021 um 21:37 schrieb Takashi Yano via Cygwin:
> On Tue, 16 Feb 2021 09:26:52 -0700
> Brian Inglis wrote:
>> On 2021-02-16 04:31, Takashi Yano via Cygwin wrote:
>>> On Tue, 16 Feb 2021 19:31:54 +0900
>>> Takashi Yano wrote:
>>>> On Sun, 14 Feb 2021 17:43:58 +0900
>>>> Takashi Yano wrote:
>>>>> On Sat, 13 Feb 2021 20:39:39 +1000
>>>>> Alvin Seville wrote:
>>>>>> Windows build number: Win32NT 10.0.19042.0 Microsoft Windows NT 10.0.19042.0
>>>>>> Windows Terminal version (if applicable): 1.5.10271.0
>>>>>> Script to reproduce this issue:
>>>>>> #!/usr/bin/env bashfunction outputText()
>>>>>> {
>>>>>>     local text=$1
>>>>>>     local -i textLength=${#text}
>>>>>>
>>>>>>     local -i line="$(tput lines) / 2"
>>>>>>     local -i col="$(tput cols) / 2 - $textLength / 2"
>>>>>>
>>>>>>     clear
>>>>>>     echo -en "\e[$line;${col}H$text"
>>>>>> }
>>>>>> trap "outputText 'Hello world!'" SIGWINCH
>>>>>> outputText 'Hello world!'while truedo
>>>>>>       :done
>>>>> 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.
>>>> I came up with a solution for this issue and implemented that.
>>>> It seems working as expected as far as I tested while I did not
>>>> have to change the code much contrary to my concern.
>>>>
>>>> The point of the idea is to keep the basic structure of the
>>>> console code unchanged and introduce a new thread which handle
>>>> the only signals derived from input records. Handling of Ctrl-S
>>>> and Ctrl-Q also added.
>>>>
>>>> I would like to submit the patch to cygwin-patches mailing list.
>>>>
>>>> Corinna, could you please have a look?
>>> v2: Problems when input echo is stopped by Ctrl-S is fixed.
>> Do these changes (still?) honour stty flags like isig, ixany, noflsh and handle
>> interrupt character settings for e.g.:
>> 	intr = ^C; quit = ^\; swtch = ^Z; start = ^Q; stop = ^S; susp = ^Z;
>> 	discard = ^O;
>> ?
> Basically yes. However, stty noflsh, flusho and Ctrl-O
> does not take effect in the current code with/without
> the patch.
Output flushing doesn't work in the pty either, and neither in Linux. 
The setting seems to be a relic from Unix systems.
--
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019