summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c
diff options
context:
space:
mode:
Diffstat (limited to 'mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c')
-rw-r--r--[-rwxr-xr-x]mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c34
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;
}