Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Thu, 9 May 2002 12:22:14 -0400 (EDT) From: Mark Blackburn To: cygwin AT cygwin DOT com Subject: Re: EISDIR EACCES and open in grepB Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII 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/