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>2001-10-14 19:49:13 +0400
committerChristopher Faylor <me@cgf.cx>2001-10-14 19:49:13 +0400
commit48372ea6f139576feaccd942d7674d06abd3c396 (patch)
tree62aa2aadc0d8d93951ddd42498b12e9f7efca84b
parent611d92e24c092849635b8395ec97e9c7140a6324 (diff)
* dtable.cc (dtable::build_fhandler_from_name): Use PC_FULL to determine path
name. * fork.cc (fork_parent): Correct the "unable to allocate forker_finished event" error message. It named the wrong event before.
-rw-r--r--winsup/cygwin/ChangeLog10
-rw-r--r--winsup/cygwin/dtable.cc2
-rw-r--r--winsup/cygwin/fork.cc2
-rw-r--r--winsup/cygwin/path.cc16
4 files changed, 12 insertions, 18 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 446de968f..c2dda0be4 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,13 @@
+2001-10-14 Christopher Faylor <cgf@redhat.com>
+
+ * dtable.cc (dtable::build_fhandler_from_name): Use PC_FULL to
+ determine path name.
+
+Sun Oct 14 08:10:12 2001 Gary R. Van Sickle
+
+ * fork.cc (fork_parent): Correct the "unable to allocate
+ forker_finished event" error message. It named the wrong event before.
+
2001-10-13 Christopher Faylor <cgf@redhat.com>
* autoload.cc (load_wsock32): Declare dummy function to force loading
diff --git a/winsup/cygwin/dtable.cc b/winsup/cygwin/dtable.cc
index e63bad970..ff1b0f065 100644
--- a/winsup/cygwin/dtable.cc
+++ b/winsup/cygwin/dtable.cc
@@ -244,7 +244,7 @@ fhandler_base *
dtable::build_fhandler_from_name (int fd, const char *name, HANDLE handle,
path_conv& pc, unsigned opt, suffix_info *si)
{
- pc.check (name, opt | PC_NULLEMPTY, si);
+ pc.check (name, opt | PC_NULLEMPTY | PC_FULL, si);
if (pc.error)
{
set_errno (pc.error);
diff --git a/winsup/cygwin/fork.cc b/winsup/cygwin/fork.cc
index 0fa70814c..9bc5bd837 100644
--- a/winsup/cygwin/fork.cc
+++ b/winsup/cygwin/fork.cc
@@ -422,7 +422,7 @@ fork_parent (HANDLE& hParent, dll *&first_dll,
{
CloseHandle (hParent);
CloseHandle (subproc_ready);
- system_printf ("unable to allocate subproc_ready event, %E");
+ system_printf ("unable to allocate forker_finished event, %E");
return -1;
}
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index cb05f1a2b..59b0d59df 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -3146,22 +3146,6 @@ fchdir (int fd)
}
SetResourceLock (LOCK_FD_LIST, WRITE_LOCK | READ_LOCK, "fchdir");
int ret = chdir (cygheap->fdtab[fd]->get_name ());
- if (ret == 0)
- {
- /* The name in the fhandler is explicitely overwritten with the full path.
- Otherwise fchmod() to a path originally given as a relative path could
- end up in a completely different directory. Imagine:
-
- fd = open ("..");
- fchmod(fd);
- fchmod(fd);
-
- The 2nd fchmod should chdir to the same dir as the first call, not
- to it's parent dir. */
- char posix_path[MAX_PATH];
- cygheap->fdtab.reset_unix_path_name (fd, cygheap->cwd.get (posix_path, 1, 1));
- }
-
ReleaseResourceLock (LOCK_FD_LIST, WRITE_LOCK | READ_LOCK, "fchdir");
syscall_printf ("%d = fchdir (%d)", ret, fd);
return ret;