X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-1.8 required=5.0	tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,TW_RX,T_TO_NO_BRKTS_FREEMAIL
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
In-Reply-To: <4BF1B307.20507@ntlworld.com>
References: <4BF1B307.20507@ntlworld.com>
Date: Sat, 29 May 2010 23:32:23 +0100
Message-ID: <AANLkTinQuDlPPsrL51C-fAhQRegeXxr7suIny2Hfc1d7@mail.gmail.com>
Subject: Re: 1.7.5 cannot bg mintty
From: Andy Koppe <andy.koppe@gmail.com>
To: cygwin@cygwin.com
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
Precedence: bulk
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie.com@cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

Paul wrote:
> I sometimes forget to append a & when opening a new mintty from an existi=
ng
> mintty. With rxvt this was never a problem, just ^Z and bg in the parent
> terminal (my shell is bash =C2=A03.2.49-23). This doesn't seem to work fo=
r mintty
> (0.6.2-1) though - although it seems that the job has has been put into t=
he
> background it never becomes possible to type anything into the newly spaw=
ned
> terminal window after ^Z has been used.
>
> If I spawn an rxvt from a mintty (or indeed an rxvt from an rxvt) using ^Z
> and bg works without any problems. I can't see anything obviously differe=
nt
> in the output of stty -a between my rxvt and mintty.
>
> If I start a mintty with a &, fg it and then bg it again, the same effect
> occurs - it becomes impossible to type anything into the child mintty.

I fixed this in svn, to appear in mintty-0.7. The thread for reading
output from the child process wrongly exited when the read() call got
interrupted by a signal such as SIGSTOP.

(There's also another issue with the ^Z not taking effect immediately
due to signal handling being disabled while mintty waits for Windows
events, but that would require some fairly major restructuring to fix,
so leaving that for later. Looking at rxvt, the right thing to do is a
select() on the pty device and /dev/windows instead of mintty's
current approach using multiple threads and
MsgWaitForMultipleObjects.)

Andy

--
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

