diff options
author | Christian Couder <chriscool@tuxfamily.org> | 2009-02-02 08:12:58 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-06-01 04:03:40 +0400 |
commit | 451bb210f81c10b60bf90403c9183be26beaaabf (patch) | |
tree | 7f65acf1d82dac05446baea45684349cfaa3874a | |
parent | bebdd271ff660d603ad75fef346ad1ff19fca0cb (diff) |
parse-options: add new function "usage_msg_opt"
This function can be used instead of "usage_with_options" when you
want to print an error message before the usage string.
It may be useful because:
if (condition)
usage_msg_opt("condition is false", usage, opts);
is shorter than:
if (condition) {
fprintf(stderr, "condition is false\n\n");
usage_with_options(usage, opts);
}
and may be more consistent.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin-replace.c | 2 | ||||
-rw-r--r-- | parse-options.c | 8 | ||||
-rw-r--r-- | parse-options.h | 4 |
3 files changed, 13 insertions, 1 deletions
diff --git a/builtin-replace.c b/builtin-replace.c index e3767b9661..8220d6eb38 100644 --- a/builtin-replace.c +++ b/builtin-replace.c @@ -121,7 +121,7 @@ int cmd_replace(int argc, const char **argv, const char *prefix) OPT_END() }; - argc = parse_options(argc, argv, options, git_replace_usage, 0); + argc = parse_options(argc, argv, prefix, options, git_replace_usage, 0); if (list && delete) usage_with_options(git_replace_usage, options); diff --git a/parse-options.c b/parse-options.c index b85cab2466..743f5bae4e 100644 --- a/parse-options.c +++ b/parse-options.c @@ -555,6 +555,14 @@ void usage_with_options(const char * const *usagestr, exit(129); } +void usage_msg_opt(const char *msg, + const char * const *usagestr, + const struct option *options) +{ + fprintf(stderr, "%s\n\n", msg); + usage_with_options(usagestr, options); +} + int parse_options_usage(const char * const *usagestr, const struct option *opts) { diff --git a/parse-options.h b/parse-options.h index b374ade95c..f0f885c67d 100644 --- a/parse-options.h +++ b/parse-options.h @@ -132,6 +132,10 @@ extern int parse_options(int argc, const char **argv, const char *prefix, extern NORETURN void usage_with_options(const char * const *usagestr, const struct option *options); +extern NORETURN void usage_msg_opt(const char *msg, + const char * const *usagestr, + const struct option *options); + /*----- incremental advanced APIs -----*/ enum { |