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
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2006-01-31 17:43:37 +0300
committerCorinna Vinschen <corinna@vinschen.de>2006-01-31 17:43:37 +0300
commit735229ff4ff9eae6f1412fd21f18e9189060024f (patch)
tree2f1ce7a68b971c0e2be023999ffa6ef05a4a3494 /winsup/cygwin
parent82cac98f3eb00f33900cc0be235c89ee94f776ae (diff)
* path.cc (cwdstuff::set): When SetCurrentDirectory returns
ERROR_INVALID_FUNCTION, bend it over to ERROR_FILE_NOT_FOUND. Add comment to explain why.
Diffstat (limited to 'winsup/cygwin')
-rw-r--r--winsup/cygwin/ChangeLog12
-rw-r--r--winsup/cygwin/path.cc4
2 files changed, 16 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 596b05ab3..505a6b700 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,15 @@
+2006-01-31 Corinna Vinschen <corinna@vinschen.de>
+
+ * path.cc (cwdstuff::set): When SetCurrentDirectory returns
+ ERROR_INVALID_FUNCTION, bend it over to ERROR_FILE_NOT_FOUND. Add
+ comment to explain why.
+
+2006-01-31 Corinna Vinschen <corinna@vinschen.de>
+
+ * dir.cc (readdir_worker): Add comment about writing old 32 bit d_ino.
+ * include/cygwin/version.h: Bump API minor number to 152.
+ (CYGWIN_VERSION_CHECK_FOR_NEEDS_D_INO): Remove.
+
2006-01-30 Corinna Vinschen <corinna@vinschen.de>
* fhandler_disk_file.cc (fhandler_disk_file::rewinddir): Simplify
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index a141c06fd..73ea90831 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -3975,6 +3975,10 @@ cwdstuff::set (const char *win32_cwd, const char *posix_cwd, bool doit)
cwd_lock.acquire ();
if (doit && !SetCurrentDirectory (win32_cwd))
{
+ /* When calling SetCurrentDirectory for a non-existant dir on a
+ Win9x share, it returns ERROR_INVALID_FUNCTION. */
+ if (GetLastError () == ERROR_INVALID_FUNCTION)
+ SetLastError (ERROR_FILE_NOT_FOUND);
__seterrno ();
goto out;
}