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>2006-01-21 05:24:17 +0300
committerChristopher Faylor <me@cgf.cx>2006-01-21 05:24:17 +0300
commit868fb2ff6992142de60d6ff31da0ac84ddcf9363 (patch)
treef03159b6200450e06f348f4b67ddcc3585e754c3 /winsup/cygwin/fhandler_disk_file.cc
parent54abc854d09c5b411a22406de19cbd7cdf88e748 (diff)
* include/cygwin/version.h: Bump API minor number to 151.
* dir.cc (__opendir_with_d_ino): New function. (opendir): Set flag if we should be calculating inodes. (readdir_worker): Calculate d_ino by calling stat if the user has asked for it. (seekdir64): Maintain all persistent flag settings. * fhandler.h (dirent_states): Add dirent_set_d_ino. * fhandler_disk_file.cc (fhandler_disk_file::opendir): Reflect changes to dirent structure. * fhandler_virtual.cc (fhandler_virtual::opendir): Ditto. * include/sys/dirent.h (struct dirent): Coalesce two similar structures. Remove all threads of the apparently highly confusing references to inodes. Add support for calculating a real inode if __USE_EXPENSIVE_CYGWIN_D_INO is defined.
Diffstat (limited to 'winsup/cygwin/fhandler_disk_file.cc')
-rw-r--r--winsup/cygwin/fhandler_disk_file.cc5
1 files changed, 2 insertions, 3 deletions
diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc
index 7243d591f..ce0738b4a 100644
--- a/winsup/cygwin/fhandler_disk_file.cc
+++ b/winsup/cygwin/fhandler_disk_file.cc
@@ -1359,7 +1359,7 @@ fhandler_disk_file::opendir ()
else
{
strcpy (dir->__d_dirname, get_win32_name ());
- dir->__d_dirent->d_version = __DIRENT_VERSION;
+ dir->__d_dirent->__d_version = __DIRENT_VERSION;
cygheap_fdnew fd;
if (fd < 0)
@@ -1367,7 +1367,7 @@ fhandler_disk_file::opendir ()
fd = this;
fd->nohandle (true);
- dir->__d_dirent->d_fd = fd;
+ dir->__d_fd = fd;
dir->__fh = this;
/* FindFirstFile doesn't seem to like duplicate /'s. */
len = strlen (dir->__d_dirname);
@@ -1378,7 +1378,6 @@ fhandler_disk_file::opendir ()
dir->__d_cookie = __DIRENT_COOKIE;
dir->__handle = INVALID_HANDLE_VALUE;
dir->__d_position = 0;
- dir->__d_dirhash = get_namehash ();
res = dir;
dir->__flags = (pc.normalized_path[0] == '/' && pc.normalized_path[1] == '\0') ? dirent_isroot : 0;