This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: EISDIR EACCES and open in grepB
- From: Mark Blackburn <marklist at rivendell dot fangorn dot ca>
- To: cygwin at cygwin dot com
- Date: Thu, 9 May 2002 12:22:14 -0400 (EDT)
- Subject: Re: EISDIR EACCES and open in grepB
This might make a little more sense than my last "patch". I still
haven't managed to build cygwin1.dll. I tried the cygwin src from
setup.exe and the src from cvs. Could someone point me at some sort of
build instructions. On the setup.exe src I have an empty w32api
directory that make complains about :
make[1]: Entering directory `/usr/src/cygwin-1.3.10-1/winsup/w32api'
make[1]: *** No rule to make target `all'. Stop.
make[1]: Leaving directory `/usr/src/cygwin-1.3.10-1/winsup/w32api'
make: *** [w32api] Error 1
Or if I start at /usr/src/cygwin-1.3.10-1/winsup/w32api/cygwin :
g++ -c -gstabs+ -O2 -MMD -fbuiltin ... cygheap.cc
In file included from cygheap.cc:17:
fhandler.h: In method `select_stuff::select_stuff()':
fhandler.h:1086: implicit declaration of function `int memset(...)'
make: *** [cygheap.o] Error 1
On the cvs version it dies like this :
lib ..working in
checkoutput.exp ..linked
flags.exp ..linked
newlib.exp ..linked
passfail.exp ..linked
newlib.locale ..working in
UTF-8.c ..linked
UTF-8.exp ..linked
locale.exp ..linked
newlib.string ..working in
string.exp ..linked
tstring.c ..linked
loading cache ../config.cache
configure: error: can not find install-sh or install.sh in .. ./..
make: *** [configure-target-newlib] Error 1
--- fhandler.cc.bak Tue Feb 19 22:25:00 2002
+++ fhandler.cc Thu May 9 10:18:40 2002
@@ -409,7 +409,26 @@
if (GetLastError () == ERROR_INVALID_HANDLE)
set_errno (ENOENT);
else
- __seterrno ();
+ {
+ if (GetLastError () == ERROR_ACCESS_DENIED)
+ {
+ WIN32_FIND_DATA find_file_data;
+ if (INVALID_HANDLE_VALUE != FindFirstFile(get_win32_name (),
+ &find_file_data))
+ {
+ if (FILE_ATTRIBUTE_DIRECTORY ==
+ find_file_data.dwFileAttributes)
+ set_errno (EISDIR);
+ }
+ else
+ {
+ SetLastError (ERROR_ACCESS_DENIED);
+ __seterrno ();
+ }
+ }
+ else
+ __seterrno ();
+ }
goto done;
}
A
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/