summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fhandler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/fhandler.cc')
-rw-r--r--winsup/cygwin/fhandler.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/winsup/cygwin/fhandler.cc b/winsup/cygwin/fhandler.cc
index 2507f322e..61f9cc01f 100644
--- a/winsup/cygwin/fhandler.cc
+++ b/winsup/cygwin/fhandler.cc
@@ -1520,6 +1520,9 @@ fhandler_base::closedir (DIR *)
int
fhandler_base::fchmod (mode_t mode)
{
+ extern int chmod_device (path_conv& pc, mode_t mode);
+ if (pc.is_fs_special ())
+ return chmod_device (pc, mode);
/* By default, just succeeds. */
return 0;
}
@@ -1527,6 +1530,8 @@ fhandler_base::fchmod (mode_t mode)
int
fhandler_base::fchown (__uid32_t uid, __gid32_t gid)
{
+ if (pc.is_fs_special ())
+ return ((fhandler_disk_file *) this)->fhandler_disk_file::fchown (uid, gid);
/* By default, just succeeds. */
return 0;
}