diff options
Diffstat (limited to 'mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c')
| -rw-r--r--[-rwxr-xr-x] | mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c | 34 |
1 files changed, 21 insertions, 13 deletions
diff --git a/mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c b/mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c index 7b0806eff..fde65fbef 100755..100644 --- a/mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c +++ b/mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c @@ -9,7 +9,7 @@ #include "apilist.h" #include "apistring.h" -#include "mruby/compile.h" +#include <mruby/compile.h> typedef struct help_msg { const char *cmd1; @@ -34,7 +34,7 @@ static help_msg help_msg_list[] = { "\n" "Continue program stopped by a breakpoint.\n" "If N, which is non negative value, is passed,\n" - "proceed program until the N-th breakpoint is comming.\n" + "proceed program until the N-th breakpoint is coming.\n" "If N is not passed, N is assumed 1.\n" }, { @@ -83,6 +83,12 @@ static help_msg help_msg_list[] = { "Arguments are breakpoint numbers with spaces in between.\n" }, { + "i[nfo]", "l[ocals]", "Print name of local variables", + "Usage: info locals\n" + "\n" + "Print name of local variables.\n" + }, + { "l[ist]", NULL, "List specified line", "Usage: list\n" " list first[,last]\n" @@ -134,7 +140,7 @@ typedef struct listcmd_parser_state { static listcmd_parser_state* listcmd_parser_state_new(mrb_state *mrb) { - listcmd_parser_state *st = mrb_malloc(mrb, sizeof(listcmd_parser_state)); + listcmd_parser_state *st = (listcmd_parser_state*)mrb_malloc(mrb, sizeof(listcmd_parser_state)); memset(st, 0, sizeof(listcmd_parser_state)); return st; } @@ -240,7 +246,8 @@ char* replace_ext(mrb_state *mrb, const char *filename, const char *ext) { size_t len; - char *p, *s; + const char *p; + char *s; if (filename == NULL) { return NULL; @@ -253,11 +260,11 @@ replace_ext(mrb_state *mrb, const char *filename, const char *ext) len = strlen(filename); } - if ((s = mrb_malloc(mrb, len + strlen(ext) + 1)) != NULL) { - memset(s, '\0', len + strlen(ext) + 1); - strncpy(s, filename, len); - strcat(s, ext); - } + s = (char*)mrb_malloc(mrb, len + strlen(ext) + 1); + memset(s, '\0', len + strlen(ext) + 1); + strncpy(s, filename, len); + strcat(s, ext); + return s; } @@ -323,7 +330,7 @@ parse_listcmd_args(mrb_state *mrb, mrdb_state *mrdb, listcmd_parser_state *st) static mrb_bool check_cmd_pattern(const char *pattern, const char *cmd) { - char *lbracket, *rbracket, *p, *q; + const char *lbracket, *rbracket, *p, *q; if (pattern == NULL && cmd == NULL) { return TRUE; @@ -331,7 +338,7 @@ check_cmd_pattern(const char *pattern, const char *cmd) if (pattern == NULL || cmd == NULL) { return FALSE; } - if((lbracket = strchr(pattern, '[')) == NULL) { + if ((lbracket = strchr(pattern, '[')) == NULL) { return !strcmp(pattern, cmd); } if ((rbracket = strchr(pattern, ']')) == NULL) { @@ -464,6 +471,7 @@ dbgcmd_quit(mrb_state *mrb, mrdb_state *mrdb) int buf; printf("The program is running. Exit anyway? (y or n) "); + fflush(stdout); if ((buf = getchar()) == EOF) { mrdb->dbg->xm = DBG_QUIT; @@ -491,8 +499,8 @@ dbgcmd_quit(mrb_state *mrb, mrdb_state *mrdb) if (mrdb->dbg->xm == DBG_QUIT) { struct RClass *exc; - exc = mrb_define_class(mrb, "DebuggerExit", mrb_class_get(mrb, "Exception")); - mrb_raise(mrb, exc, "Exit mrdb."); + exc = mrb_define_class(mrb, "DebuggerExit", mrb->eException_class); + mrb_raise(mrb, exc, "Exit mrdb"); } return DBGST_PROMPT; } |
