delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2003/09/19/21:12:50

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/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
Date: Fri, 19 Sep 2003 21:12:22 -0400
From: Christopher Faylor <cgf-rcm AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: ^C not getting to sub, sub, sub, sub processes (was: Re: 1.5.4s assertion "hsig_inited" failed)
Message-ID: <20030920011221.GA548@redhat.com>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <bjipol$tvo$1 AT sea DOT gmane DOT org> <20030908211837 DOT GA9461 AT redhat DOT com> <bjj99a$b5p$1 AT sea DOT gmane DOT org> <20030909011329 DOT GB6708 AT redhat DOT com> <bkfi7u$1e3$1 AT sea DOT gmane DOT org>
Mime-Version: 1.0
In-Reply-To: <bkfi7u$1e3$1@sea.gmane.org>
User-Agent: Mutt/1.4.1i

On Fri, Sep 19, 2003 at 02:34:37PM -0400, Rolf Campbell wrote:
>Christopher Faylor wrote:
>>This problem sounded familiar so I did a little archive diving.  It was
>>reported before and I investigated it before.  I remember thinking that
>>this would be hard to fix owing to a race condition with signals in tty
>>code.  I can make this fail in various interesting ways even outside of
>>the pty/tty code, though.  So, I'm investigating why now.

The above was in reference to CTRL-Z.  I do know what the problem is but
I don't have a clean fix for it.

>I have a reproducable (at least on my machine) of some ^C handling issues.
>
>#!/bin/python
>import sys, os, select
>
>if(int(sys.argv[1]) > 0):
>    os.system(sys.argv[0] + " %d" % (int(sys.argv[1])-1))
>else:
>    select.select([], [], [], 10)
>
>Try running this as "./deep.py 0", and then, when it's waiting, hit ^C, 
>it will terminate fine.  Now try it as "./deep.py 1", and then hit ^C. 
>Nothing happens.  I see this when I try to cancel my build, but ^C 
>doesn't work when the process tree is too deep.

Interesting.  This is an *ancient* bug.  I think it even predates my
involvment in cygwin.  It was a bug in the system() call.  It should be
fixed in the latest snapshot, available now.

Thanks for the test case.

cgf

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

- Raw text -


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