* fhandler.h (dirent_states): Add dirent_isroot, dirent_saw_cygdrive,
dirent_saw_dev. * dir.cc (opendir): Don't zero __flags here. Push that responsibility to opendir methods. (seekdir): Preserve dirent_isrrot in __flags. (rewinddir): Ditto. * fhandler_disk_file.cc (fhandler_disk_file::opendir): Set dirent_isroot appropriately. (fhandler_disk_file::readdir): Fill in "cygdrive" and "dev" if it is the root dir and they are missing. * fhandler_process.cc (fhandler_process::opendir): Set __flags here. * fhandler_virtual.cc (fhandler_virtual::opendir): Set __flags here.
This commit is contained in:
@@ -40,10 +40,13 @@ struct __acl32;
|
||||
|
||||
enum dirent_states
|
||||
{
|
||||
dirent_ok = 0,
|
||||
dirent_saw_dot = 1,
|
||||
dirent_saw_dot_dot = 2,
|
||||
dirent_saw_eof = 4
|
||||
dirent_ok = 0x0000,
|
||||
dirent_saw_dot = 0x0001,
|
||||
dirent_saw_dot_dot = 0x0002,
|
||||
dirent_saw_eof = 0x0004,
|
||||
dirent_isroot = 0x0008,
|
||||
dirent_saw_cygdrive = 0x0010,
|
||||
dirent_saw_dev = 0x0020
|
||||
};
|
||||
|
||||
enum conn_state
|
||||
|
Reference in New Issue
Block a user