This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: exec*() bug
- From: Christopher Faylor <cgf-use-the-mailinglist-please at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Tue, 27 Apr 2010 19:07:55 -0400
- Subject: Re: exec*() bug
- References: <4BD74C9E.8040100@redhat.com>
- Reply-to: cygwin at cygwin dot com
On Tue, Apr 27, 2010 at 02:44:14PM -0600, Eric Blake wrote:
>On Linux, 'env ./.' triggers an exec() that fails with EACCES, and exits
>with status 126 (file was located, but cannot be executed). But on
>Cygwin, the exec() fails with ENOENT, and env exits with status 127
>(file could not be located). This is particularly insidious, because
>some programs depend on knowing the difference between the two types of
>exec() errors (not present, vs. not executable). For example, one test
>of the findutils testsuite fails, because 'echo | xargs /' gives the
>wrong status.
That's an easy one to fix. The code was already trying to do the right
thing but it was confused by .exe handling. I've checked in a fix
and am generating a snapshot now.
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