* dir.cc (readdir_worker): Ensure that saw_dot flags are updated when not

handling inodes.
This commit is contained in:
Christopher Faylor 2006-01-03 15:42:56 +00:00
parent 5d09b46dc3
commit 825d0b9385
2 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2006-01-03 Eric Blake <ebb9@byu.net>
* dir.cc (readdir_worker): Ensure that saw_dot flags are updated when
not handling inodes.
2006-01-02 Christopher Faylor <cgf@timesys.com>
* fhandler_console.cc (beep): New function. Restores missing "Default
@ -6,7 +11,7 @@
2006-01-02 Christopher Faylor <cgf@timesys.com>
* dcrt0.cc (_dll_crt0): Move more leftover debugging stuff.
* dcrt0.cc (_dll_crt0): Remove more leftover debugging stuff.
(cygwin_dll_init): Remove unneeded initializations. Call _dll_crt0
rather than dll_crt0_1.

View File

@ -1,6 +1,6 @@
/* dir.cc: Posix directory-related routines
Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2006 Red Hat, Inc.
This file is part of Cygwin.
@ -105,10 +105,17 @@ readdir_worker (DIR *dir, dirent *de)
{
de->__invalid_d_ino = 0;
de->__ino32 = 0;
if (de->d_name[0] == '.')
{
if (de->d_name[1] == '\0')
dir->__flags |= dirent_saw_dot;
else if (de->d_name[1] == '.' && de->d_name[2] == '\0')
dir->__flags |= dirent_saw_dot_dot;
}
}
else
{
/* Compute __invalid_d_ino by combining filename hash with the directory hash
/* Compute d_ino by combining filename hash with the directory hash
(which was stored in dir->__d_dirhash when opendir was called). */
if (de->d_name[0] == '.')
{