This is the mail archive of the cygwin-patches@cygwin.com mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
I have been rereading the chdir thread to see how things went wrong. The problem with find is due to the following change <http://cygwin.com/ml/cygwin-patches/2004-q2/msg00063.html> > That means that cwd.set always attempts to build the > Posix wd through the mount table. > Up to now that was only the case when a symlink was > involved in the translation, or there was a ":" or a "\" > in the directory name, or check_case was not relaxed. It follows that "find /" has always been broken when check_case != "relax". Please review carefully! In addition to fixing the find bug the patch fixes the handling of paths such as c:xxx and it calls SetCurrentDirectory inside the muto region. Pierre 2004-05-15 Pierre Humblet <pierre.humblet@ieee.org> * cygheap.h (cwdstuff::set): Modify return value and arguments. * path.cc (chdir): Specify PC_POSIX. Do not call SetCurrentDirectory. Set posix_cwd in a way that does not break find.exe. Change call to cwd.set. (cwdstuff::get_initial): Do not call GetCurrentDirectory here. (cwdstuff::set): Call SetCurrentDirectory and GetCurrentDirectory as needed.
Attachment:
path.diff
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |