* fhandler_proc.cc (fhandler_proc::fstat): Use fhandler name rather than

path_conv name.
(fhandler_proc::open): Ditto.
* fhandler_process.cc (fhandler_process::fstat): Use fhandler name rather than
path_conv name.
(fhandler_process::open): Ditto.
* fhandler_registry.cc (fhandler_registry::fstat): Use fhandler name rather
than path_conv name.
(fhandler_registry::open): Ditto.
* path.cc (path_conv::check): Don't copy posix path when virtual.
(mount_info::conv_to_win32_path): Don't zero string when isproc.  Just derive
normal windows path.
* path.h (path_conv::clear_normalized_path): Declare new method.
* path.cc (path_conv::clear_normalized_path): Define new method.
* dtable.cc (build_fhandler_from_name): Clear normalized path when finished to
conserve space.
This commit is contained in:
Christopher Faylor
2002-05-03 02:43:45 +00:00
parent 3bb7eb449c
commit 335c87f94d
8 changed files with 53 additions and 24 deletions

View File

@ -45,9 +45,9 @@ fhandler_virtual::opendir (path_conv& pc)
DIR *res = NULL;
size_t len;
if (exists (pc) <= 0)
if (exists (get_name ()) <= 0)
set_errno (ENOTDIR);
else if ((len = strlen (pc)) > MAX_PATH - 3)
else if ((len = strlen (get_name ())) > MAX_PATH - 3)
set_errno (ENAMETOOLONG);
else if ((dir = (DIR *) malloc (sizeof (DIR))) == NULL)
set_errno (ENOMEM);
@ -64,7 +64,7 @@ fhandler_virtual::opendir (path_conv& pc)
}
else
{
strcpy (dir->__d_dirname, pc);
strcpy (dir->__d_dirname, get_name ());
dir->__d_dirent->d_version = __DIRENT_VERSION;
cygheap_fdnew fd;
fd = this;