Re: [PATCH 2/2] git: continue alias lookup on EACCES errors
- From
Jeff King <peff@peff.net>
- Date
- Mar 28, 2012, 20:37 UTC
- Message-ID
- <20120328203758.GA10104@sigill.intra.peff.net>
- In-Reply-To
- <20120328201851.GA29315@sigill.intra.peff.net>
On Wed, Mar 28, 2012 at 04:18:51PM -0400, Jeff King wrote:
Show 7 quoted lines
> +int sane_execvp(const char *file, char * const argv[])
> +{
> + int ret = execvp(file, argv);
> + if (ret < 0 && errno == EACCES && !file_in_path_is_nonexecutable(file))
> + errno = ENOENT;
> + return ret;
> +}Hmm, this should check for (*file == '/') to handle absolute paths properly. If you have an absolute path, I would tend to think that we should never rewrite it into ENOENT (so if you have "/foo/bar", even if "foo" is inaccessible, ENOENT is still the right response).
-Peff