]> git.ipfire.org Git - thirdparty/git.git/commitdiff
ref-filter: convert email atom parser to use err_bad_arg()
authorJeff King <peff@peff.net>
Wed, 14 Dec 2022 16:24:03 +0000 (11:24 -0500)
committerJunio C Hamano <gitster@pobox.com>
Thu, 15 Dec 2022 00:14:09 +0000 (09:14 +0900)
The error message for a bogus argument to %(authoremail), etc, is:

   $ git for-each-ref --format='%(authoremail:foo)'
   fatal: unrecognized email option: foo

Saying just "email" is a little vague; most of the other atom parsers
would use the full name "%(authoremail)", but we can't do that here
because the same function also handles %(taggeremail), etc. Until
recently, passing atom->name was a bad idea, because it erroneously
included the arguments in the atom name. But since the previous commit
taught err_bad_arg() to handle this, we can now do so and get:

  fatal: unrecognized %(authoremail) argument: foo

which is consistent with other atoms.

Signed-off-by: Jeff King <peff@peff.net>
Acked-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
ref-filter.c

index f40bc4d9c96e1fab090343a964fa470dd608b463..733b0149e8032f4130e20844853923343f501db6 100644 (file)
@@ -489,7 +489,7 @@ static int person_email_atom_parser(struct ref_format *format, struct used_atom
        else if (!strcmp(arg, "localpart"))
                atom->u.email_option.option = EO_LOCALPART;
        else
-               return strbuf_addf_ret(err, -1, _("unrecognized email option: %s"), arg);
+               return err_bad_arg(err, atom->name, arg);
        return 0;
 }