This is the mail archive of the cygwin 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]

Re: Unwanted .exe appended to symlinks


On Fri, Jul 08, 2005 at 10:03:41PM -0600, Eric Blake wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>According to fergus on 7/8/2005 9:43 PM:
>> 	ln -s /cygdrive/c /c
>> 	ln -s /cygdrive/f /f
>> Following the recent upgrade to cygutils I find that the symlink is
>> created as /c.exe not /c and /f.exe not /f in cases where the drive
>> exists.
>
>Confirmed.  Unfortunately, this is a side effect of my improvements to ln
>to unify the cygwin-specific .exe code which tries to determine when the
>original file exists as just "file" vs. "file.exe".  Inside normal
>directories, the test is simple - check if "file." exists (since Windows
>flattens the trailing .).  But for virtual filenames (such as /cygdrive,
>/proc/registry, //server, or managed drives), the trailing . trick doesn't
>work.  I really NEED a way to tell whether a file exists with exact
>spelling, or had .exe appended, and you've found a place where the
>trailing . trick is not cutting it.  Since ln, mv, and cp share my
>cygwin-specific code now, I imagine it is probably easy to find a similar
>bug in cp or mv.

I don't get it.  Certainly /cygdrive/c.exe doesn't exist so why would you
try to link to it?

cgf

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]