diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 9d94aae5b..264f78743 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2005-04-20 Christopher Faylor + + * 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 * path.cc (path_conv::check): Fix problem reading symlinks introduced 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