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>2005-04-21 00:43:36 +0400
committerChristopher Faylor <me@cgf.cx>2005-04-21 00:43:36 +0400
commitc6cb7f8f013fff416f53d9915b57b5afabe6bd58 (patch)
tree6e2aa72061e46934bcc04169338d9cd0809ea83e
parent2e98459145a93cfdbdd20231d23a3b493fcad0d7 (diff)
* sigproc.cc (proc_subproc): Fix handling of waiting for pids with zero value.
* strace.cc (strace::hello): Report parent pid of executing process.
-rw-r--r--winsup/cygwin/ChangeLog7
-rw-r--r--winsup/cygwin/path.cc13
-rw-r--r--winsup/cygwin/sigproc.cc2
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