From 0b27b17fbff6bca670941daa993c532571e8ae15 Mon Sep 17 00:00:00 2001 From: Tokunori Ikegami Date: Sat, 15 Apr 2023 02:56:12 +0900 Subject: [PATCH] util: Check output format json for json error message output Signed-off-by: Tokunori Ikegami --- util/argconfig.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/util/argconfig.c b/util/argconfig.c index 3eb885fa..a48a1c4b 100644 --- a/util/argconfig.c +++ b/util/argconfig.c @@ -295,6 +295,18 @@ bool argconfig_output_format_json(bool set) return output_format_json; } +static bool argconfig_check_output_format_json(struct argconfig_commandline_options *s) +{ + for (; s && s->option; s++) { + if (strcmp(s->option, "output-format") || s->config_type != CFG_STRING) + continue; + if (!strcmp(*(char **)s->default_value, "json")) + return true; + } + + return false; +} + int argconfig_parse(int argc, char *argv[], const char *program_desc, struct argconfig_commandline_options *options) { @@ -372,6 +384,10 @@ int argconfig_parse(int argc, char *argv[], const char *program_desc, if (ret) break; } + + if (argconfig_check_output_format_json(options)) + argconfig_output_format_json(true); + out: free(short_opts); free(long_opts); -- 2.49.0