Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2010-09-21 02:28:57 +0400
committerChristopher Faylor <me@cgf.cx>2010-09-21 02:28:57 +0400
commitdf4d2bea3d9446532844b92e3ac38d5472672e6f (patch)
tree54ba263493d5db5be2247b6d41f8d9e8ad6b9a80 /winsup/cygwin/spawn.cc
parent73b6b43ed33037f897ad95651f8ac2d1b233b25b (diff)
* include/sys/cygwin.h (PID_NOTCYGWIN): New enum.
* spawn.cc (spawn_guts): Set a flag when a process is not a cygwin process. * fhandler_tty.cc (fhandler_tty_slave::init): Remove previous change. Try a different method to determine when we should become the process group owner. * signal.cc (kill0): Remove archaic code which dealt with never-set flag.
Diffstat (limited to 'winsup/cygwin/spawn.cc')
-rw-r--r--winsup/cygwin/spawn.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc
index cef4db81c..2005592f7 100644
--- a/winsup/cygwin/spawn.cc
+++ b/winsup/cygwin/spawn.cc
@@ -548,8 +548,9 @@ loop:
PWCHAR cwd;
cwd = NULL;
- if (!real_path.iscygexec())
+ if (!real_path.iscygexec ())
{
+ myself->process_state |= PID_NOTCYGWIN;
cygheap->cwd.cwd_lock.acquire ();
cwd = cygheap->cwd.win32.Buffer;
}
@@ -727,7 +728,8 @@ loop:
{
myself->set_has_pgid_children ();
ProtectHandle (pi.hThread);
- pinfo child (cygpid, PID_IN_USE);
+ pinfo child (cygpid,
+ PID_IN_USE | (real_path.iscygexec () ? 0 : PID_NOTCYGWIN));
if (!child)
{
syscall_printf ("pinfo failed");