diff options
author | Christopher Faylor <me@cgf.cx> | 2001-03-12 14:49:29 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2001-03-12 14:49:29 +0000 |
commit | 941fa5ad9686f2f33fc1a513727b53236b4017b3 (patch) | |
tree | 3c73421550b49f07c6f5e015448eefdb81e4bc45 | |
parent | d0909d913a9b6d0b9bdbcf76af5ebb106ec65fa5 (diff) | |
download | cygnal-941fa5ad9686f2f33fc1a513727b53236b4017b3.tar.gz cygnal-941fa5ad9686f2f33fc1a513727b53236b4017b3.tar.bz2 cygnal-941fa5ad9686f2f33fc1a513727b53236b4017b3.zip |
* spawn.cc (spawn_guts): Don't set EXIT_REPARENTING if parent process is not a
cygwin process (suggested by Jason Gouger <cygwin@jason-gouger.com>).
-rw-r--r-- | winsup/cygwin/ChangeLog | 6 | ||||
-rw-r--r-- | winsup/cygwin/spawn.cc | 3 | ||||
-rw-r--r-- | winsup/cygwin/syscalls.cc | 7 |
3 files changed, 11 insertions, 5 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 942059a03..628b57304 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,9 @@ +Mon Mar 12 09:47:55 2001 Christopher Faylor <cgf@cygnus.com> + + * spawn.cc (spawn_guts): Don't set EXIT_REPARENTING if parent process + is not a cygwin process (suggested by Jason Gouger + <cygwin@jason-gouger.com>). + Sun Mar 11 16:00:58 2001 Christopher Faylor <cgf@cygnus.com> * child_info.h: Bump magic number for fork/exec/spawn. diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc index e9d3659b2..431923dae 100644 --- a/winsup/cygwin/spawn.cc +++ b/winsup/cygwin/spawn.cc @@ -774,7 +774,8 @@ skip_arg_parsing: case WAIT_OBJECT_0 + 2: if (mode == _P_OVERLAY) { - res |= EXIT_REPARENTING; + if (myself->ppid_handle) + res |= EXIT_REPARENTING; if (!my_parent_is_alive ()) { nwait = 1; diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc index dbb55f321..134ad8c59 100644 --- a/winsup/cygwin/syscalls.cc +++ b/winsup/cygwin/syscalls.cc @@ -1004,16 +1004,15 @@ stat_dev (DWORD devn, int unit, unsigned long ino, struct stat *buf) sigframe thisframe (mainthread); switch (devn) { - case FH_CONOUT: case FH_PIPEW: buf->st_mode = STD_WBITS; break; - case FH_CONIN: case FH_PIPER: buf->st_mode = STD_RBITS; break; - default: - buf->st_mode = STD_RBITS | S_IWUSR | S_IWGRP | S_IWOTH; + case FH_CONIN: + case FH_CONOUT: + buf->st_mode = STD_RBITS | STD_WBITS; break; } |