]> git.sur5r.net Git - openocd/commitdiff
help/options.c: add error handling for -d arg
authorGirts <girtsf@users.noreply.github.com>
Sat, 5 Nov 2016 21:38:55 +0000 (14:38 -0700)
committerFreddie Chopin <freddie.chopin@gmail.com>
Sun, 23 Apr 2017 20:37:59 +0000 (21:37 +0100)
Fail if we fail to set debug level. Also, clarify in usage string that
-d<n> doesn't accept spaces.

Change-Id: I9ea9945dc068e3e7cfd18b16ffa2a29366d6e4d1
Signed-off-by: Girts Folkmanis <opensource@girts.me>
Reviewed-on: http://openocd.zylin.com/3880
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
src/helper/options.c

index 409abeebb4ab4e37ad031aa69c811b9ab82da29b..0016659148aa0b39e37660b9373ac8e2a5e2cc31 100644 (file)
@@ -267,8 +267,10 @@ int parse_cmdline_args(struct command_context *cmd_ctx, int argc, char *argv[])
                        case 'd':               /* --debug | -d */
                        {
                                char *command = alloc_printf("debug_level %s", optarg ? optarg : "3");
-                               command_run_line(cmd_ctx, command);
+                               int retval = command_run_line(cmd_ctx, command);
                                free(command);
+                               if (retval != ERROR_OK)
+                                       return retval;
                                break;
                        }
                        case 'l':               /* --log_output | -l */
@@ -298,7 +300,8 @@ int parse_cmdline_args(struct command_context *cmd_ctx, int argc, char *argv[])
                LOG_OUTPUT("--version    | -v\tdisplay OpenOCD version\n");
                LOG_OUTPUT("--file       | -f\tuse configuration file <name>\n");
                LOG_OUTPUT("--search     | -s\tdir to search for config files and scripts\n");
-               LOG_OUTPUT("--debug      | -d\tset debug level <0-3>\n");
+               LOG_OUTPUT("--debug      | -d\tset debug level to 3\n");
+               LOG_OUTPUT("             | -d<n>\tset debug level to <level>\n");
                LOG_OUTPUT("--log_output | -l\tredirect log output to file <name>\n");
                LOG_OUTPUT("--command    | -c\trun <command>\n");
                exit(-1);