@matheusbsbs / matheus-bagliano / commits / e169b97459
Fork 0

show-branch: don't use LASTARG_DEFAULT with OPTARG

5734365 (show-branch: migrate to parse-options API 2009-05-21) incorrectly set the --more option's flags to be PARSE_OPT_LASTARG_DEFAULT and PARSE_OPT_OPTARG. These two flags shouldn't be used together. An option taking a default should just set the default value desired and parse options will take care of the rest. Update the header comment to better convey this information. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Acked-by: René Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Stephen Boyd committed Jun 7, 2009 at 16:39 UTC e169b974593c27ba7a0d7f63ec0ec40373cb64bb
2 files changed +6 -4
builtin-show-branch.c
+1 -2
@@ -657,8 +657,7 @@ int cmd_show_branch(int ac, const char **av, const char *prefix)
657 "color '*!+-' corresponding to the branch"),
658 { OPTION_INTEGER, 0, "more", &extra, "n",
659 "show <n> more commits after the common ancestor",
660 - PARSE_OPT_OPTARG | PARSE_OPT_LASTARG_DEFAULT,
661 - NULL, (intptr_t)1 },
660 + PARSE_OPT_OPTARG, NULL, (intptr_t)1 },
661 OPT_SET_INT(0, "list", &extra, "synonym to more=-1", -1),
662 OPT_BOOLEAN(0, "no-name", &no_name, "suppress naming strings"),
663 OPT_BOOLEAN(0, "current", &with_current_branch,
parse-options.h
+5 -2
@@ -71,8 +71,11 @@ typedef int parse_opt_cb(const struct option *, const char *arg, int unset);
71 * PARSE_OPT_NONEG: says that this option cannot be negated
72 * PARSE_OPT_HIDDEN: this option is skipped in the default usage, and
73 * shown only in the full usage.
74 - * PARSE_OPT_LASTARG_DEFAULT: if no argument is given, the default value
75 - * is used.
74 + * PARSE_OPT_LASTARG_DEFAULT: says that this option will take the default
75 + * value if no argument is given when the option
76 + * is last on the command line. If the option is
77 + * not last it will require an argument.
78 + * Should not be used with PARSE_OPT_OPTARG.
79 * PARSE_OPT_NODASH: this option doesn't start with a dash.
80 * PARSE_OPT_LITERAL_ARGHELP: says that argh shouldn't be enclosed in brackets
81 * (i.e. '<argh>') in the help message.