summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2006-01-28 13:59:39 +0000
committerCorinna Vinschen <corinna@vinschen.de>2006-01-28 13:59:39 +0000
commitb8670a4764a891c1bd77e7486d89c2b0ab48027d (patch)
treed0df2e687f941781f76c11948235f53b10dde89c
parent7ab59dee9440f8de58e064271908d309daf95d68 (diff)
downloadcygnal-b8670a4764a891c1bd77e7486d89c2b0ab48027d.tar.gz
cygnal-b8670a4764a891c1bd77e7486d89c2b0ab48027d.tar.bz2
cygnal-b8670a4764a891c1bd77e7486d89c2b0ab48027d.zip
* fhandler_disk_file.cc (fhandler_disk_file::mkdir): In case or error,
check for existance explicitely and set errno to EEXIST.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/fhandler_disk_file.cc2
2 files changed, 7 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 21eb751bc..82dcaebb7 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2006-01-28 Corinna Vinschen <corinna@vinschen.de>
+ * fhandler_disk_file.cc (fhandler_disk_file::mkdir): In case or error,
+ check for existance explicitely and set errno to EEXIST.
+
+2006-01-28 Corinna Vinschen <corinna@vinschen.de>
+
* fhandler_disk_file.cc (DIR_NUM_ENTRIES): New define determining
minimum number of dir entries which fit into the readdir cache.
(DIR_BUF_SIZE): Define globally as size of readdir cache.
diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc
index 54b2f17f6..e6adca261 100644
--- a/winsup/cygwin/fhandler_disk_file.cc
+++ b/winsup/cygwin/fhandler_disk_file.cc
@@ -1257,6 +1257,8 @@ fhandler_disk_file::mkdir (mode_t mode)
#endif
res = 0;
}
+ else if (pc.exists ())
+ set_errno (EEXIST);
else
__seterrno ();