]> git.gag.com Git - fw/openocd/commitdiff
help: fix line size in 'usage' output
authorAntonio Borneo <borneo.antonio@gmail.com>
Sat, 27 Mar 2021 21:23:50 +0000 (22:23 +0100)
committerAntonio Borneo <borneo.antonio@gmail.com>
Sat, 29 May 2021 20:35:06 +0000 (21:35 +0100)
The implementation of command 'usage' is broken while checking the
line limit of 76 chars per line (e.g. 'usage load_image') and the
line wrapping is not correct. The same broken code is used for the
first output line of command 'help' too.

When call command_help_show_wrap(), include the command's name in
the string so the whole text would be wrapped.

Change-Id: Idece01ce54994db7e851d8522435ff764b11f3ac
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/6223
Tested-by: jenkins
src/helper/command.c

index c3d2e95665b583056b28e847702ff57308bd413c..d4f6a0a52dc6d7b8bc47e812c42e12471ea8bfe8 100644 (file)
@@ -820,14 +820,13 @@ static COMMAND_HELPER(command_help_show, struct help_entry *c,
                ((c->help != NULL) && (strstr(c->help, cmd_match) != NULL));
 
        if (is_match) {
-               command_help_show_indent(n);
-               LOG_USER_N("%s", c->cmd_name);
-
                if (c->usage && strlen(c->usage) > 0) {
-                       LOG_USER_N(" ");
-                       command_help_show_wrap(c->usage, 0, n + 5);
-               } else
-                       LOG_USER_N("\n");
+                       char *msg = alloc_printf("%s %s", c->cmd_name, c->usage);
+                       command_help_show_wrap(msg, n, n + 5);
+                       free(msg);
+               } else {
+                       command_help_show_wrap(c->cmd_name, n, n + 5);
+               }
        }
 
        if (is_match && show_help) {