Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/winsup
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2008-02-29 19:38:51 +0300
committerCorinna Vinschen <corinna@vinschen.de>2008-02-29 19:38:51 +0300
commit86a4b0c733dab174b9eb1b556b881f565d7bd819 (patch)
tree4e421f4170ce43ae2a873c902186ccb641996996 /winsup
parentfb91cb7a41fd0bfb12e266c66b0ce8d96c63bcb5 (diff)
* fhandler_disk_file.cc (fhandler_disk_file::fchmod): Call close_fs
instead of close to avoid calling close from wrong class when changing a file system based device node. (fhandler_disk_file::fchown): Ditto. (fhandler_disk_file::facl): Ditto.
Diffstat (limited to 'winsup')
-rw-r--r--winsup/cygwin/ChangeLog8
-rw-r--r--winsup/cygwin/fhandler_disk_file.cc6
2 files changed, 11 insertions, 3 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index b91c83c43..1e5896fb5 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,11 @@
+2008-02-29 Corinna Vinschen <corinna@vinschen.de>
+
+ * fhandler_disk_file.cc (fhandler_disk_file::fchmod): Call close_fs
+ instead of close to avoid calling close from wrong class when changing
+ a file system based device node.
+ (fhandler_disk_file::fchown): Ditto.
+ (fhandler_disk_file::facl): Ditto.
+
2008-02-28 Corinna Vinschen <corinna@vinschen.de>
* exceptions.cc (_cygtls::handle_exceptions): When being debugged,
diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc
index c06b5ffdd..fbd66e2ff 100644
--- a/winsup/cygwin/fhandler_disk_file.cc
+++ b/winsup/cygwin/fhandler_disk_file.cc
@@ -784,7 +784,7 @@ fhandler_disk_file::fchmod (mode_t mode)
res = 0;
if (oret)
- close ();
+ close_fs ();
return res;
}
@@ -826,7 +826,7 @@ fhandler_disk_file::fchown (__uid32_t uid, __gid32_t gid)
res = set_file_attribute (get_handle (), pc, uid, gid, attrib);
}
if (oret)
- close ();
+ close_fs ();
return res;
}
@@ -941,7 +941,7 @@ cant_access_acl:
}
if (oret)
- close ();
+ close_fs ();
return res;
}