From: Tokunori Ikegami Date: Sat, 15 Jul 2023 18:00:53 +0000 (+0900) Subject: util: Set LC_ALL=C as default if -H option is not used X-Git-Tag: v2.6~80 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=ff751267e7394d509d46cbb685d88c21acf1b64e;p=users%2Fsagi%2Fnvme-cli.git util: Set LC_ALL=C as default if -H option is not used Signed-off-by: Tokunori Ikegami --- diff --git a/util/argconfig.c b/util/argconfig.c index effeea2f..9f88957b 100644 --- a/util/argconfig.c +++ b/util/argconfig.c @@ -41,6 +41,7 @@ #include #include #include +#include static const char *append_usage_str = ""; @@ -335,6 +336,16 @@ static bool argconfig_check_output_format_json(struct argconfig_commandline_opti return false; } +static bool argconfig_check_human_readable(struct argconfig_commandline_options *s) +{ + for (; s && s->option; s++) { + if (!strcmp(s->option, "human-readable") && s->config_type == CFG_FLAG) + return s->seen; + } + + return false; +} + int argconfig_parse(int argc, char *argv[], const char *program_desc, struct argconfig_commandline_options *options) { @@ -419,6 +430,9 @@ int argconfig_parse(int argc, char *argv[], const char *program_desc, if (argconfig_check_output_format_json(options)) argconfig_output_format_json(true); + if (!argconfig_check_human_readable(options)) + setlocale(LC_ALL, "C"); + out: free(short_opts); free(long_opts);