git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/1] run-command.c: ignore bad permissions on dirs in PATH

From
DRDale Rowley <ddrowley@gmail.com>
Date
May 25, 2010, 02:55 UTC
Message-ID
<4BFB3C0A.2030505@gmail.com>

All of my git aliases stopped working one day. For example, when I ran 'git ci' (where 'ci' is an alias for 'commit') it printed out this error:

fatal: cannot exec 'git-ci': Permission denied

This error was confusing (I didn't have a 'git-ci' executable anywhere, so why was it complaining about permissions?) and it took me a while to figure out that this was happening because I happened to have a random directory in my PATH that had permissions set incorrectly. Git should probably ignore this, and here is one way to fix it, although I'm not sure if it's the best way.

Signed-off-by: Dale Rowley <ddrowley@gmail.com>
---
 run-command.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/run-command.c b/run-command.c
index c7793f5..a98282b 100644
--- a/run-command.c
+++ b/run-command.c
@@ -284,7 +284,7 @@ fail_pipe:
 		 * Do not check for cmd->silent_exec_failure; the parent
 		 * process will check it when it sees this exit code.
 		 */
-		if (errno == ENOENT)
+		if (errno == ENOENT || errno == EACCES)
 			exit(127);
 		else
 			die_errno("cannot exec '%s'", cmd->argv[0]);
-- 
1.7.1.226.g770c5.dirty
Next: Junio C Hamano
Message 1 of 4 in “run-command.c: ignore bad permissions on dirs in PATH”
  1. 1/1 run-command.c: ignore bad permissions on dirs in PATHDale Rowley, May 25, 2010
  2. Junio C HamanoMay 25, 2010
  3. Johannes SixtMay 25, 2010
  4. Dale RowleyMay 26, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.