On Wed, Mar 28, 2012 at 04:18:51PM -0400, Jeff King wrote: > +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 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html