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: src/winsup/cygwin ChangeLog syscalls.cc


On Thu, Nov 05, 2009 at 07:22:25PM +0100, Corinna Vinschen wrote:
>On Nov  5 13:17, Christopher Faylor wrote:
>> On Thu, Nov 05, 2009 at 01:08:47PM -0500, Christopher Faylor wrote:
>> >On Thu, Nov 05, 2009 at 06:34:50PM +0100, Corinna Vinschen wrote:
>> >>Let's see:
>> >>
>> >>  rename ("foo.exe", "perl5.10.0.exe")  result: perl5.10.0.exe
>> >>  rename ("foo.exe", "perl5.10.0")      result: perl5.10.0
>> >>  rename ("foo", "perl5.10.0.exe")      result: perl5.10.0.exe
>> >>  rename ("foo", "perl5.10.0")          result: perl5.10.0
>> >>
>> >>The latter one is a problem, because that's what happens when calling
>> >>
>> >>  strip perl5.10.0
>> >>
>> >>so after strip the binary is missing a .exe suffix.
>> >>
>> >>Sigh.
>> >>
>> >>Is there any *reliable* solution to this problem, other than never to
>> >>add a .exe suffix?
>> >
>> >Isn't the reliable-but-slow method to check the magic at the beginning
>> >of the file to see if it actually is a .exe?  I'm not sure we want to do
>> >that though.
>> 
>> Which is, of course, what we're doing.  Duh.
>> 
>> I see why the strip case is problematic but I can't think of a way to
>> fix it since the "state" of the temporary file is lost between stripping
>> and renaming.
>
>Right.  That's why I thought that any suffix given in the target file
>name should be sufficient to avoid appending the .exe suffix, but
>apparently it isn't.  Probably we would need to check for any kind
>of Windows executable suffix like .exe, .sys, .com.  I have to admit,
>though, that I never saw a .src suffix for a Windows binary...

Well, in this case we could just look for alphabetic suffixes.  But that's
probably too kludgy.

cgf

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


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