Commit 968f5d2a authored by take_cheeze's avatar take_cheeze

improve checkings in debug.c

parent 3df86862
...@@ -24,7 +24,7 @@ get_file(mrb_irep_debug_info* info, uint32_t const pc) ...@@ -24,7 +24,7 @@ get_file(mrb_irep_debug_info* info, uint32_t const pc)
--ret; --ret;
mrb_assert(ret < (info->files + info->flen)); mrb_assert(ret <= info->files && ret < (info->files + info->flen));
mrb_assert((*ret)->start_pos <= pc && mrb_assert((*ret)->start_pos <= pc &&
pc < (((ret + 1 - info->files) < info->flen) pc < (((ret + 1 - info->files) < info->flen)
? (*(ret+1))->start_pos : info->pc_count)); ? (*(ret+1))->start_pos : info->pc_count));
...@@ -50,8 +50,8 @@ select_line_type(uint16_t const* lines, size_t lines_len) ...@@ -50,8 +50,8 @@ select_line_type(uint16_t const* lines, size_t lines_len)
char const* char const*
mrb_debug_get_filename(mrb_irep* irep, uint32_t pc) mrb_debug_get_filename(mrb_irep* irep, uint32_t pc)
{ {
if (irep && pc < irep->ilen) {
mrb_irep_debug_info_file* f = NULL; mrb_irep_debug_info_file* f = NULL;
if (irep) {
if (!irep->debug_info) { return irep->filename; } if (!irep->debug_info) { return irep->filename; }
else if ((f = get_file(irep->debug_info, pc))) { else if ((f = get_file(irep->debug_info, pc))) {
return f->filename; return f->filename;
...@@ -63,8 +63,8 @@ mrb_debug_get_filename(mrb_irep* irep, uint32_t pc) ...@@ -63,8 +63,8 @@ mrb_debug_get_filename(mrb_irep* irep, uint32_t pc)
int32_t int32_t
mrb_debug_get_line(mrb_irep* irep, uint32_t const pc) mrb_debug_get_line(mrb_irep* irep, uint32_t const pc)
{ {
if (irep && pc < irep->ilen) {
mrb_irep_debug_info_file* f = NULL; mrb_irep_debug_info_file* f = NULL;
if (irep) {
if (!irep->debug_info) { if (!irep->debug_info) {
return irep->lines? irep->lines[pc] : -1; return irep->lines? irep->lines[pc] : -1;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment