From 8195e55d0c134a45f7c9bd95c8b5741781841c18 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Tue, 23 Jun 2015 09:10:56 +0200 Subject: [PATCH] common: Improve fucntion parse_debug_flag. * common/miscellaneous.c (parse_debug_flag): Add hack not to call exit. Add "none" and "all" flags. Signed-off-by: Werner Koch --- common/miscellaneous.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/common/miscellaneous.c b/common/miscellaneous.c index e84089594..ec36f08ea 100644 --- a/common/miscellaneous.c +++ b/common/miscellaneous.c @@ -440,7 +440,8 @@ parse_debug_flag (const char *string, unsigned int *debugvar, log_info ("available debug flags:\n"); for (i=0; flags[i].name; i++) log_info (" %5u %s\n", flags[i].flag, flags[i].name); - exit (0); + if (flags[i].flag != 77) + exit (0); } else if (digitp (string)) { @@ -466,7 +467,17 @@ parse_debug_flag (const char *string, unsigned int *debugvar, break; } if (!flags[j].name) - log_info (_("unknown debug flag '%s' ignored\n"), words[i]); + { + if (!strcmp (words[i], "none")) + { + *debugvar = 0; + result = 0; + } + else if (!strcmp (words[i], "all")) + result = ~0; + else + log_info (_("unknown debug flag '%s' ignored\n"), words[i]); + } } } xfree (words);