summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/path.cc5
2 files changed, 10 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 3c7e8d1db..04f36a4fa 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2010-06-14 Corinna Vinschen <corinna@vinschen.de>
+ * path.cc (path_conv::check): Return with ENOTDIR if component is a
+ device.
+
+2010-06-14 Corinna Vinschen <corinna@vinschen.de>
+
* dlfcn.cc (get_full_path_of_dll): Revert patch from 2010-04-29.
2010-06-12 Christopher Faylor <me+cygwin@cgf.cx>
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index d5d103d9f..8ea7e97f1 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -829,6 +829,11 @@ is_virtual_symlink:
if (sym.isdevice)
{
+ if (component)
+ {
+ error = ENOTDIR;
+ return;
+ }
dev.parse (sym.major, sym.minor);
dev.setfs (1);
dev.mode = sym.mode;