Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Thu, 25 Oct 2001 13:41:40 +0200 From: Dan Holmsand To: cygwin AT cygwin DOT com Subject: Subprocess suboptimality Message-ID: <20011025134138.A1792@DANOLA> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i As previously reported, Cygwin is no longer able to abort non-Cygwin processes started in a subshell (i.e. they don't respond to Ctrl-C or SIGTERM). This applies both to 1.3.3 and a very recent CVS build. I haven't been able to solve this (mainly because everything works when running the whole thing under strace...), but I might add some datapoints: It seems that only sh is having trouble, not bash: replacing ash with bash makes non-Cygwin subprocesses abortable. In some cases, mainly when using ant (a java build tool), Ctrl-C kills sh, but doesn't interrupt the java child process. Replacing ash with bash "fixes" things in this case also. Below are some examples (all executed on W2K in rxvt with bash as shell with CYGWIN=tty ntsec): tracert www.cygwin.com Abortable. sh -c "tracert www.cygwin.com" Not responding. strace sh -c "tracert www.cygwin.com" Abortable. bash -c "tracert www.cygwin.com" Abortable. "Abortable" means "works ok". "Not responding" means that Ctrl-C is useless and that killing the sh process with SIGTERM doesn't do anything. SIGKILL causes sh to exit, but leaves the child process running. I'm posting this with the faint hope that this isn't as confusing for someone else as it is for me :-) /dan -- Dan Holmsand -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/