summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Wijen <ben@wijen.net>2021-01-15 14:45:26 +0100
committerCorinna Vinschen <corinna@vinschen.de>2021-01-18 12:01:19 +0100
commit17ede0eae5d3973bbe10298d5bde223a5bdfdb97 (patch)
tree73ffa766c96e08e798e2c2d45a63e0ef417fa619
parent226ed24f2ba566b7f6f1ee8969030b73e191fb46 (diff)
downloadcygnal-17ede0eae5d3973bbe10298d5bde223a5bdfdb97.tar.gz
cygnal-17ede0eae5d3973bbe10298d5bde223a5bdfdb97.tar.bz2
cygnal-17ede0eae5d3973bbe10298d5bde223a5bdfdb97.zip
syscalls.cc: Fix num_links
NtQueryInformationFile on fh_ro needs FILE_READ_ATTRIBUTES to succeed.
-rw-r--r--winsup/cygwin/syscalls.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc
index 525efecf3..3030f6fff 100644
--- a/winsup/cygwin/syscalls.cc
+++ b/winsup/cygwin/syscalls.cc
@@ -755,8 +755,9 @@ _unlink_nt (path_conv &pc, bool shareable)
if ((pc.fs_flags () & FILE_SUPPORTS_TRANSACTIONS))
start_transaction (old_trans, trans);
retry_open:
- status = NtOpenFile (&fh_ro, FILE_WRITE_ATTRIBUTES, &attr, &io,
- FILE_SHARE_VALID_FLAGS, flags);
+ status = NtOpenFile (&fh_ro,
+ FILE_READ_ATTRIBUTES | FILE_WRITE_ATTRIBUTES,
+ &attr, &io, FILE_SHARE_VALID_FLAGS, flags);
if (NT_SUCCESS (status))
{
debug_printf ("Opening %S for removing R/O succeeded",