| www.delorie.com/archives/browse.cgi | search |
| Mailing-List: | contact cygwin-developers-help AT cygwin DOT com; run by ezmlm |
| List-Subscribe: | <mailto:cygwin-developers-subscribe AT cygwin DOT com> |
| List-Archive: | <http://sources.redhat.com/ml/cygwin-developers/> |
| List-Post: | <mailto:cygwin-developers AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-developers-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs> |
| Sender: | cygwin-developers-owner AT cygwin DOT com |
| Delivered-To: | mailing list cygwin-developers AT cygwin DOT com |
| Message-ID: | <3E7F5A9C.4050804@hekimian.com> |
| Date: | Mon, 24 Mar 2003 14:21:00 -0500 |
| X-Sybari-Trust: | 35e8fa5b 36b09be0 04609a3e 00000109 |
| From: | Joe Buehler <jbuehler AT hekimian DOT com> |
| Reply-To: | jbuehler AT hekimian DOT com |
| Organization: | Spirent Communications, Inc. |
| User-Agent: | Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.3) Gecko/20030312 |
| X-Accept-Language: | en-us, en |
| MIME-Version: | 1.0 |
| To: | cygwin-developers AT cygwin DOT com |
| Subject: | second try: [PATCH] finishing spawn / vfork signal inheritance |
| References: | <3E79FA1B DOT 60302 AT hekimian DOT com> |
| In-Reply-To: | <3E79FA1B.60302@hekimian.com> |
| X-Enigmail-Version: | 0.73.1.0 |
| X-Enigmail-Supports: | pgp-inline, pgp-mime |
If someone with CVS access would commit this, I would appreciate it.
Currently, spawn() and vfork() do not pass signal handler settings
on to the child process, and this breaks ksh93. This patch fixes
the problem (in conjunction with a change cgf already committed).
2003-03-20 Joe Buehler <jhpb AT draco DOT hekimian DOT com>
* spawn.cc: (spawn_guts): copy signal handler info to spawned child.
Index: spawn.cc
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/spawn.cc,v
retrieving revision 1.120
diff -u -r1.120 spawn.cc
--- spawn.cc 13 Feb 2003 02:52:41 -0000 1.120
+++ spawn.cc 20 Mar 2003 17:26:55 -0000
@@ -756,6 +756,8 @@
}
child->dwProcessId = pi.dwProcessId;
child->hProcess = pi.hProcess;
+ /* make child inherit our signal settings */
+ child->copysigs (myself);
child.remember ();
strcpy (child->progname, real_path);
/* FIXME: This introduces an unreferenced, open handle into the child.
--
Joe Buehler
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |