This is the mail archive of the
cygwin-patches
mailing list for the Cygwin project.
Re: [PATCH] Cygwin: Fix signal handling issue introduced by PTY related change.
- From: Ken Brown <kbrown at cornell dot edu>
- To: "cygwin-patches at cygwin dot com" <cygwin-patches at cygwin dot com>
- Date: Thu, 3 Oct 2019 13:31:27 +0000
- Subject: Re: [PATCH] Cygwin: Fix signal handling issue introduced by PTY related change.
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cornell.edu; dmarc=pass action=none header.from=cornell.edu; dkim=pass header.d=cornell.edu; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zAiRi7qdWnEpVu5fPqwCp66GStUeqHxs+7j2YKNCba8=; b=Spa2OP/39t2EKguxtM40IKff2Vx5gB79J0RRcR1QATiXQShzj8BubkMgGIOjQfrdlB2Zkz7YV0O08WAwoxB0Cu+vLK+bLAAyAGeQcgLtiFpZeFD1Jfmo3bkDYPafOG3nvSXFa8U38Ogh32TB1ujZSIY5ihZ2VlwUjrk+NaBCFZILQyoxi+Da2yLfitG0/mhVCtXR/7eCTmOsAF/LpX5IQCjAsi1f5nErekXXcTCzemrWrFViYsYWaEHWQFVXvFlRSMp5j+WVGKcN9G4iinlGCVCmc6WBOgOJHjlVSx1sXcT8cBamNzboQ4uDbA1eSyPls9Sj6Lhipj2IvEtEQNB7Qw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L9QJziwAE/9hQ/L2Yv8HbmEx2lSux90ymT6GdU/etNu9RTvDm8P0HV+VLdqtO9fGe2DR7S3LWt13InoOh3MWo9SXTHtcbaSM+NtSBzIMTtWaGDkCk5SgVJuB74ExIivFQ2HnApGh3y8MCseGmN5cBrx1328ExCp07JrzdDGxwiPQKAyX6xt4jW/I8h+bszZlYo8sWI2nFEpnWZWBvUAcQehPPAnyGwixpdIeouv85krH6D377xHGt98hOpojxDkdtLTb0wR++H32LwBezk0UVaboWIBBrQueiZXQeFaov3bpVQkyPmB33VzmIFOHBHHwtnaH/johfiHIY+2vOH3PCw==
- References: <20191003104337.700-1-takashi.yano@nifty.ne.jp>
On 10/3/2019 6:43 AM, Takashi Yano wrote:
> - After commit 41864091014b63b0cb72ae98281fa53349b6ef77, there is a
> regression in signal handling reported in
> https://www.cygwin.com/ml/cygwin/2019-10/msg00010.html. This patch
> fixes the issue.
> ---
> winsup/cygwin/exceptions.cc | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc
> index db0fe0867..132fea427 100644
> --- a/winsup/cygwin/exceptions.cc
> +++ b/winsup/cygwin/exceptions.cc
> @@ -949,7 +949,7 @@ _cygtls::interrupt_setup (siginfo_t& si, void *handler, struct sigaction& siga)
> if (incyg)
> set_signal_arrived ();
>
> - if (!have_execed && ch_spawn.iscygwin ())
> + if (!have_execed && !(myself->exec_sendsig && !ch_spawn.iscygwin ()))
> proc_subproc (PROC_CLEARWAIT, 1);
> sigproc_printf ("armed signal_arrived %p, signal %d",
> signal_arrived, si.si_signo);
Pushed. Thanks.
Ken