From 47e9cd28f8a404a0d6293935252ddca5fc243931 Mon Sep 17 00:00:00 2001 From: Thomas Rast Date: Sat, 12 Jun 2010 14:57:39 +0200 Subject: parseopt: wrap rev-parse --parseopt usage for eval consumption 9c7304e (print the usage string on stdout instead of stderr, 2010-05-17) broke rev-parse --parseopt: when run with -h, the usage notice on stdout ended up in the shell eval. Wrap the usage in a cat <<\EOF ... EOF block when printing to stdout. I do not expect any usage lines to ever start with EOF so this shouldn't be an undue burden. Signed-off-by: Thomas Rast Signed-off-by: Junio C Hamano --- builtin/rev-parse.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'builtin/rev-parse.c') diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c index 8fbf9d0db6..b676e29635 100644 --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@ -408,7 +408,8 @@ static int cmd_parseopt(int argc, const char **argv, const char *prefix) memset(opts + onb, 0, sizeof(opts[onb])); argc = parse_options(argc, argv, prefix, opts, usage, keep_dashdash ? PARSE_OPT_KEEP_DASHDASH : 0 | - stop_at_non_option ? PARSE_OPT_STOP_AT_NON_OPTION : 0); + stop_at_non_option ? PARSE_OPT_STOP_AT_NON_OPTION : 0 | + PARSE_OPT_SHELL_EVAL); strbuf_addf(&parsed, " --"); sq_quote_argv(&parsed, argv, 0); -- cgit v1.2.1