Skip to content

Commit

Permalink
cli: fix human help output for the new jsonrpc help response
Browse files Browse the repository at this point in the history
Now that we're returning all the help data, we need to update the human_help
formatter to handle the extra data.

Signed-off-by: William Casarin <[email protected]>
  • Loading branch information
jb55 authored and rustyrussell committed Oct 10, 2018
1 parent d23a0e8 commit 8f405ca
Showing 1 changed file with 10 additions and 5 deletions.
15 changes: 10 additions & 5 deletions cli/lightning-cli.c
Original file line number Diff line number Diff line change
Expand Up @@ -89,22 +89,24 @@ static size_t human_readable(const char *buffer, const jsmntok_t *t, char term)
abort();
}

static void human_help(const char *buffer, const jsmntok_t *result) {
static void human_help(const char *buffer, const jsmntok_t *result, bool has_command) {
int i;
const jsmntok_t * help_array = result + 2;
/* the first command object */
const jsmntok_t * curr = help_array + 1;
/* iterate through all commands, printing the name and description */
for (i = 0; i<help_array->size; i++) {
for (i = 0; i < help_array->size; i++) {
curr += 2;
printf("%.*s\n", curr->end - curr->start, buffer + curr->start);
curr += 2;
printf(" %.*s\n\n", curr->end - curr->start, buffer + curr->start);
curr += 2;
/* advance to next command */
curr++;
}

printf("---\nrun `lightning-cli help <command>` for more information on a specific command\n");
if (!has_command)
printf("---\nrun `lightning-cli help <command>` for more information on a specific command\n");
}

enum format {
Expand Down Expand Up @@ -363,9 +365,12 @@ int main(int argc, char *argv[])
json_tok_len(id), json_tok_contents(resp, id));

if (!error || json_tok_is_null(resp, error)) {
// if we have specific help command
if (format == HUMAN)
if (streq(method, "help")) human_help(resp, result);
else human_readable(resp, result, '\n');
if (streq(method, "help") && command == NULL)
human_help(resp, result, false);
else
human_readable(resp, result, '\n');
else
printf("%.*s\n",
json_tok_len(result),
Expand Down

0 comments on commit 8f405ca

Please sign in to comment.