X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=exec_cmd.c;h=44bb2f23de926db59832a69a3205a320dfe61c4d;hb=f8ba655ee4131e5c73c28a4ea854b24ce4058e1e;hp=b5e59a9ae9777183d3110defc2c8964aa0d8b62b;hpb=d00e0f8101e18e3d48a60d574dacc83dad8e19bb;p=git.git diff --git a/exec_cmd.c b/exec_cmd.c index b5e59a9a..44bb2f23 100644 --- a/exec_cmd.c +++ b/exec_cmd.c @@ -29,17 +29,18 @@ const char *git_exec_path(void) } -int execv_git_cmd(char **argv) +int execv_git_cmd(const char **argv) { char git_command[PATH_MAX + 1]; - char *tmp; - int len, err, i; + int len, i; const char *paths[] = { current_exec_path, getenv("GIT_EXEC_PATH"), builtin_exec_path }; - for (i = 0; i < sizeof(paths)/sizeof(paths[0]); ++i) { + for (i = 0; i < ARRAY_SIZE(paths); ++i) { const char *exec_dir = paths[i]; + const char *tmp; + if (!exec_dir) continue; if (*exec_dir != '/') { @@ -82,9 +83,7 @@ int execv_git_cmd(char **argv) argv[0] = git_command; /* execve() can only ever return if it fails */ - execve(git_command, argv, environ); - - err = errno; + execve(git_command, (char **)argv, environ); argv[0] = tmp; } @@ -93,11 +92,11 @@ int execv_git_cmd(char **argv) } -int execl_git_cmd(char *cmd,...) +int execl_git_cmd(const char *cmd,...) { int argc; - char *argv[MAX_ARGS + 1]; - char *arg; + const char *argv[MAX_ARGS + 1]; + const char *arg; va_list param; va_start(param, cmd);