Re: [PATCH 01/20] git.c: update NO_PARSEOPT markings
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Jul 26, 2022, 19:55 UTC
- Message-ID
- <20220726195516.GA2264@szeder.dev>
- In-Reply-To
- <20220725123857.2773963-2-szeder.dev@gmail.com>
On Mon, Jul 25, 2022 at 02:38:38PM +0200, SZEDER Gábor wrote:
Show 19 quoted lines
> Our Bash completion script can complete --options for commands using > parse-options even when that command doesn't have a dedicated > completion function, but to do so the completion script must know > which commands use parse-options and which don't. Therefore, commands > not using parse-options are marked in 'git.c's command list with the > NO_PARSEOPT flag. > > Update this list, and remove this flag from the commands that by now > use parse-options. > > Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com> > --- > git.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/git.c b/git.c > index e5d62fa5a9..c4282f194a 100644 > --- a/git.c > +++ b/git.c
Show 6 quoted lines
> @@ -627,7 +627,7 @@ static struct cmd_struct commands[] = {
> { "verify-tag", cmd_verify_tag, RUN_SETUP },
> { "version", cmd_version },
> { "whatchanged", cmd_whatchanged, RUN_SETUP },
> - { "worktree", cmd_worktree, RUN_SETUP | NO_PARSEOPT },
> + { "worktree", cmd_worktree, RUN_SETUP },This hunk is wrong, 'worktree' does not use parse_options(). I was fooled by seeing its (empty) 'struct option' array, thinking that then it must surely use parse_options(), but it only uses that options array to pass it to usage_with_options().
This NO_PARSEOPT flag should be removed in the last patch of the series, when I convert cmd_worktree() to handle its subcommands with parse_options().
Show 6 quoted lines
> { "write-tree", cmd_write_tree, RUN_SETUP },
> };
>
> --
> 2.37.1.633.g6a0fa73e39
>