delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2013/01/11/10:39:24

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_YE
X-Spam-Check-By: sourceware.org
X-Mail-Handler: Dyn Standard SMTP by Dyn
X-Report-Abuse-To: abuse AT dyndns DOT com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information)
X-MHO-User: U2FsdGVkX1/kq7b1n8uLmy9R1v6v9nR2
Date: Fri, 11 Jan 2013 10:38:57 -0500
From: Christopher Faylor <cgf-use-the-mailinglist-please AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: select() not interrupted by signals
Message-ID: <20130111153857.GB3450@ednor.casa.cgf.cx>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <50EFD041 DOT 4090108 AT towo DOT net>
MIME-Version: 1.0
In-Reply-To: <50EFD041.4090108@towo.net>
User-Agent: Mutt/1.5.20 (2009-06-14)
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Fri, Jan 11, 2013 at 09:41:37AM +0100, Thomas Wolff wrote:
>I had previously reported "select() hanging after terminal killed" 
>(http://cygwin.com/ml/cygwin/2011-05/msg00418.html).
>It turns out that select() does not get interrupted by a SIGWINCH signal 
>either (with likely the same cause).
>This raises problems with interactive programs that want to react to 
>window size changes (like text editors).
>
>See attached updated test case; run the program, while select() is 
>waiting (before 5 second timeout each), change window size and see no 
>interrupt.

"No interrupt"?  I see a "HUP" but select() keeps going.  That was the
way I designed it but apparently that differs from the way Linux works.
select() is not restartable like read() or write().

That behavior should be fixed in the next snapshot.  If you are seeing
something different than this then that is not fixed.

cgf

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


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