Junio C Hamano <gitster@xxxxxxxxx> writes: > This made me look at split_cmdline_strerror(). It is a table lookup > into split_cmdline_errors[] in alias.c which looks like this: > > static const char *split_cmdline_errors[] = { > N_("cmdline ends with \\"), > N_("unclosed quote"), > N_("too many arguments"), > }; > > So the result is properly localized, but I suspect that the string > after : should not be enclosed within a pair of single quotes. > > die(_("could not split '%s': %s", strategy_opts_string, > split_cmdline_strerror(count))); > > Other than that, nice find. I'll queue this on top. ----- >8 ---------- >8 ---------- >8 ---------- >8 ----- Subject: [PATCH] SQUASH: no point in quoting strerror like messages The error message is taken from a limited and fixed set of strings and we do not usually enclose strerror(errno) inside a pair of single quotes. --- sequencer.c | 2 +- t/t3436-rebase-more-options.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sequencer.c b/sequencer.c index cc59a1c491..e4a3f0081f 100644 --- a/sequencer.c +++ b/sequencer.c @@ -2885,7 +2885,7 @@ void parse_strategy_opts(struct replay_opts *opts, char *raw_opts) count = split_cmdline(strategy_opts_string, (const char ***)&opts->xopts); if (count < 0) - die(_("could not split '%s': '%s'"), strategy_opts_string, + die(_("could not split '%s': %s"), strategy_opts_string, split_cmdline_strerror(count)); opts->xopts_nr = count; for (i = 0; i < opts->xopts_nr; i++) { diff --git a/t/t3436-rebase-more-options.sh b/t/t3436-rebase-more-options.sh index 195ace3455..c3184c9ade 100755 --- a/t/t3436-rebase-more-options.sh +++ b/t/t3436-rebase-more-options.sh @@ -42,7 +42,7 @@ test_expect_success 'setup' ' test_expect_success 'bad -X <strategy-option> arguments: unclosed quote' ' cat >expect <<-\EOF && - fatal: could not split '\''--bad'\'': '\''unclosed quote'\'' + fatal: could not split '\''--bad'\'': unclosed quote EOF test_expect_code 128 git rebase -X"bad argument\"" side main >out 2>actual && test_must_be_empty out && @@ -51,7 +51,7 @@ test_expect_success 'bad -X <strategy-option> arguments: unclosed quote' ' test_expect_success 'bad -X <strategy-option> arguments: bad escape' ' cat >expect <<-\EOF && - fatal: could not split '\''--bad'\'': '\''cmdline ends with \'\'' + fatal: could not split '\''--bad'\'': cmdline ends with \ EOF test_expect_code 128 git rebase -X"bad escape \\" side main >out 2>actual && test_must_be_empty out && -- 2.40.0-rc2