diff options
| author | Taylor Blau <me@ttaylorr.com> | 2022-11-08 17:15:12 -0500 |
|---|---|---|
| committer | Taylor Blau <me@ttaylorr.com> | 2022-11-08 17:15:12 -0500 |
| commit | be4ac3b197f8b4070bdad65dea4a03e1389410a6 (patch) | |
| tree | 9fc342eb7297ce681781e3d2b2b64a0d44d6dcd4 /git.c | |
| parent | Merge branch 'rs/archive-filter-error-once' (diff) | |
| parent | replace and remove run_command_v_opt() (diff) | |
| download | git-be4ac3b197f8b4070bdad65dea4a03e1389410a6.tar.gz git-be4ac3b197f8b4070bdad65dea4a03e1389410a6.zip | |
Merge branch 'rs/no-more-run-command-v'
Simplify the run-command API.
* rs/no-more-run-command-v:
replace and remove run_command_v_opt()
replace and remove run_command_v_opt_cd_env_tr2()
replace and remove run_command_v_opt_tr2()
replace and remove run_command_v_opt_cd_env()
use child_process members "args" and "env" directly
use child_process member "args" instead of string array variable
sequencer: simplify building argument list in do_exec()
bisect--helper: factor out do_bisect_run()
bisect: simplify building "checkout" argument list
am: simplify building "show" argument list
run-command: fix return value comment
merge: remove always-the-same "verbose" arguments
Diffstat (limited to 'git.c')
| -rw-r--r-- | git.c | 15 |
1 files changed, 9 insertions, 6 deletions
@@ -787,7 +787,7 @@ static int run_argv(int *argcp, const char ***argv) if (!done_alias) handle_builtin(*argcp, *argv); else if (get_builtin(**argv)) { - struct strvec args = STRVEC_INIT; + struct child_process cmd = CHILD_PROCESS_INIT; int i; /* @@ -804,18 +804,21 @@ static int run_argv(int *argcp, const char ***argv) commit_pager_choice(); - strvec_push(&args, "git"); + strvec_push(&cmd.args, "git"); for (i = 0; i < *argcp; i++) - strvec_push(&args, (*argv)[i]); + strvec_push(&cmd.args, (*argv)[i]); - trace_argv_printf(args.v, "trace: exec:"); + trace_argv_printf(cmd.args.v, "trace: exec:"); /* * if we fail because the command is not found, it is * OK to return. Otherwise, we just pass along the status code. */ - i = run_command_v_opt_tr2(args.v, RUN_SILENT_EXEC_FAILURE | - RUN_CLEAN_ON_EXIT | RUN_WAIT_AFTER_CLEAN, "git_alias"); + cmd.silent_exec_failure = 1; + cmd.clean_on_exit = 1; + cmd.wait_after_clean = 1; + cmd.trace2_child_class = "git_alias"; + i = run_command(&cmd); if (i >= 0 || errno != ENOENT) exit(i); die("could not execute builtin %s", **argv); |
