From 9bf13750cb55d747314a472c306e66b02a2abda9 Mon Sep 17 00:00:00 2001 From: J William Piggott Date: Tue, 18 Apr 2017 20:57:27 -0400 Subject: optutils.h: don't print non-graph characters There is no eloquent way to exclude/include arch dependent arguments from the ul_excl_t array. So when an arch dependent argument is left undefined err_exclusive_options() was printing out-of-bounds values. This commit cause them to be skipped instead. err_exclusive_options() shouldn't be printing out-of-bounds values in any case. Also change the error massage from 'options' to 'arguments' as some programs, like hwclock, distinguish between options and functions. Signed-off-by: J William Piggott --- include/optutils.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'include/optutils.h') diff --git a/include/optutils.h b/include/optutils.h index 325cb8812..0dc127bbc 100644 --- a/include/optutils.h +++ b/include/optutils.h @@ -5,6 +5,7 @@ #include "c.h" #include "nls.h" +#include "cctype.h" static inline const char *option_to_longopt(int c, const struct option *opts) { @@ -81,8 +82,8 @@ static inline void err_exclusive_options( else if (status[e] != c) { size_t ct = 0; - fprintf(stderr, _("%s: these options are " - "mutually exclusive:"), + fprintf(stderr, _("%s: mutually exclusive " + "arguments:"), program_invocation_short_name); for (op = excl[e]; @@ -91,7 +92,7 @@ static inline void err_exclusive_options( const char *n = option_to_longopt(*op, opts); if (n) fprintf(stderr, " --%s", n); - else + else if (c_isgraph(*op)) fprintf(stderr, " -%c", *op); } fputc('\n', stderr); -- cgit v1.2.3-55-g7522