diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2000-06-08 13:56:28 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2000-06-08 13:56:28 +0000 |
commit | b8a7c23a2a0b89aa703a457c285785d2529af666 (patch) | |
tree | 756c37cc32873a023e89d4e72317fe9af37a6474 /winsup/cygwin/fhandler.cc | |
parent | 95bdb4966fc28a6acd32c8b11f3d34e5be5a988c (diff) | |
download | cygnal-b8a7c23a2a0b89aa703a457c285785d2529af666.tar.gz cygnal-b8a7c23a2a0b89aa703a457c285785d2529af666.tar.bz2 cygnal-b8a7c23a2a0b89aa703a457c285785d2529af666.zip |
* fhandler.cc (fhandler_disk_file::open): Check for directory
to set O_DIROPEN on directories anyway.
Diffstat (limited to 'winsup/cygwin/fhandler.cc')
-rw-r--r-- | winsup/cygwin/fhandler.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/winsup/cygwin/fhandler.cc b/winsup/cygwin/fhandler.cc index 609d1023b..17f2db194 100644 --- a/winsup/cygwin/fhandler.cc +++ b/winsup/cygwin/fhandler.cc @@ -1181,6 +1181,10 @@ fhandler_disk_file::open (path_conv& real_path, int flags, mode_t mode) set_has_acls (real_path.has_acls ()); + if (real_path.file_attributes () != (DWORD)-1 + && (real_path.file_attributes () & FILE_ATTRIBUTE_DIRECTORY)) + flags |= O_DIROPEN; + int res = this->fhandler_base::open (flags, mode); if (!res) |