From b59a54d020f2a21166fb3306aaa935252d95bd9c Mon Sep 17 00:00:00 2001 From: tracer-ysyx Date: Thu, 11 Jan 2024 20:25:29 +0800 Subject: [PATCH] =?UTF-8?q?>=20compile=20NEMU=20ysyx=5F22040000=20?= =?UTF-8?q?=E6=9D=8E=E5=BF=83=E6=9D=A8=20Linux=20calcite=206.1.69=20#1-Nix?= =?UTF-8?q?OS=20SMP=20PREEMPT=5FDYNAMIC=20Wed=20Dec=2020=2016:00:29=20UTC?= =?UTF-8?q?=202023=20x86=5F64=20GNU/Linux=20=2020:25:29=20=20up=203=20days?= =?UTF-8?q?=2019:26,=20=202=20users,=20=20load=20average:=200.62,=200.44,?= =?UTF-8?q?=200.48?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nemu/src/monitor/sdb/sdb.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/nemu/src/monitor/sdb/sdb.c b/nemu/src/monitor/sdb/sdb.c index a183c29..9493243 100644 --- a/nemu/src/monitor/sdb/sdb.c +++ b/nemu/src/monitor/sdb/sdb.c @@ -134,18 +134,17 @@ static int cmd_info(char *args) { return 0; } -static int cmd_help_print(char *args, struct CMDTable* cur_cmd_table) { +static int cmd_help_print(char *args, struct CMDTable* cur_cmd_table, int cur_nr_cmd) { int i; char *arg = strtok(NULL, " "); if (arg == NULL) { return -1; } else { - printf("nr_subcommand: %d\n", cur_cmd_table->nr_subcommand); - for (i = 0; i < cur_cmd_table->nr_subcommand; i++) { + for (i = 0; i < cur_nr_cmd; i++) { if (strcmp(arg, cur_cmd_table[i].name) == 0) { printf("Subcommand \n"); printf("%s ", cur_cmd_table[i].name); - if (cmd_help_print(arg, cur_cmd_table->subcommand) == -1) { + if (cmd_help_print(arg, cur_cmd_table[i].subcommand, cur_cmd_table[i].nr_subcommand) == -1) { printf("-- %s\n", cur_cmd_table[i].description); } return 0; @@ -169,7 +168,7 @@ static int cmd_help(char *args) { for (i = 0; i < NR_CMD; i++) { if (strcmp(arg, cmd_table[i].name) == 0) { printf("%s ", cmd_table[i].name); - if (cmd_help_print(args, cmd_table[i].subcommand) == -1) { + if (cmd_help_print(args, cmd_table[i].subcommand, cmd_table[i].nr_subcommand) == -1) { printf("-- %s\n", cmd_table[i].description); } return 0;