[PATCH 2/7] builtins: always pass prefix to parse_options()
From: Jeff King <hidden>
Date: 2023-03-28 20:54:37
Subsystem:
the rest · Maintainer:
Linus Torvalds
Our builtins receive a "prefix" argument as part of their cmd_foo() function. We should always pass this to parse_options() if we're calling it, as it may be used for OPT_FILENAME() options. In the cases here, there's no option that would use it, so we're not fixing any bug. This is just future-proofing and setting a good example (plus quelling some -Wunused-parameter warnings). Note in the case of revert/cherry-pick, that we plumb the prefix through to run_sequencer(), as those builtins are just thin wrappers around it. Signed-off-by: Jeff King <redacted> --- builtin/mktag.c | 2 +- builtin/revert.c | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/builtin/mktag.c b/builtin/mktag.c
index 42c2457c705..967a4442dee 100644
--- a/builtin/mktag.c
+++ b/builtin/mktag.c@@ -81,7 +81,7 @@ int cmd_mktag(int argc, const char **argv, const char *prefix) int tagged_type; struct object_id result; - argc = parse_options(argc, argv, NULL, + argc = parse_options(argc, argv, prefix, builtin_mktag_options, builtin_mktag_usage, 0);
diff --git a/builtin/revert.c b/builtin/revert.c
index 62986a7b1b0..287721fd37b 100644
--- a/builtin/revert.c
+++ b/builtin/revert.c@@ -94,7 +94,8 @@ static void verify_opt_compatible(const char *me, const char *base_opt, ...) die(_("%s: %s cannot be used with %s"), me, this_opt, base_opt); } -static int run_sequencer(int argc, const char **argv, struct replay_opts *opts) +static int run_sequencer(int argc, const char **argv, const char *prefix, + struct replay_opts *opts) { const char * const * usage_str = revert_or_cherry_pick_usage(opts); const char *me = action_name(opts);
@@ -141,7 +142,7 @@ static int run_sequencer(int argc, const char **argv, struct replay_opts *opts) options = parse_options_concat(options, cp_extra); } - argc = parse_options(argc, argv, NULL, options, usage_str, + argc = parse_options(argc, argv, prefix, options, usage_str, PARSE_OPT_KEEP_ARGV0 | PARSE_OPT_KEEP_UNKNOWN_OPT);
@@ -246,7 +247,7 @@ int cmd_revert(int argc, const char **argv, const char *prefix) opts.action = REPLAY_REVERT; sequencer_init_config(&opts); - res = run_sequencer(argc, argv, &opts); + res = run_sequencer(argc, argv, prefix, &opts); if (res < 0) die(_("revert failed")); replay_opts_release(&opts);
@@ -260,7 +261,7 @@ int cmd_cherry_pick(int argc, const char **argv, const char *prefix) opts.action = REPLAY_PICK; sequencer_init_config(&opts); - res = run_sequencer(argc, argv, &opts); + res = run_sequencer(argc, argv, prefix, &opts); if (res < 0) die(_("cherry-pick failed")); replay_opts_release(&opts);
--
2.40.0.675.gb17cd5d94c8