diff options
Diffstat (limited to 'winsup')
-rw-r--r-- | winsup/cygwin/ChangeLog | 7 | ||||
-rw-r--r-- | winsup/cygwin/path.cc | 13 | ||||
-rw-r--r-- | winsup/cygwin/sigproc.cc | 2 |
3 files changed, 21 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 9d94aae5b..264f78743 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,12 @@ 2005-04-20 Christopher Faylor <cgf@timesys.com> + * sigproc.cc (proc_subproc): Fix handling of waiting for pids with zero + value. + + * strace.cc (strace::hello): Report parent pid of executing process. + +2005-04-20 Christopher Faylor <cgf@timesys.com> + * path.cc (path_conv::check): Fix problem reading symlinks introduced in below change by reverting the change and adding an additional test for nonexistent files in /proc. diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc index 0d67e72dc..575204fe3 100644 --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -4073,3 +4073,16 @@ dirname (char *path) strcpy (bs, "."); return buf; } + +muto path_uglification::locker; + +path_uglification::~path_uglification () +{ + if (locker.ismine ()) + locker.release (); +} + +win_path::win_path (const char *_path) +{ + path = _path; +} diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index 91b289447..5550c9138 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -275,7 +275,7 @@ proc_subproc (DWORD what, DWORD val) case PROC_WAIT: wval->ev = NULL; // Don't know event flag yet - if (wval->pid == -1) + if (wval->pid == -1 || !wval->pid) child = NULL; // Not looking for a specific pid else if (!mychild (wval->pid)) goto out; // invalid pid. flag no such child |