diff options
| author | Tomoyuki Sahara <[email protected]> | 2012-11-01 09:40:56 +0900 |
|---|---|---|
| committer | Tomoyuki Sahara <[email protected]> | 2012-11-02 10:33:14 +0900 |
| commit | 075aa3eeaa9ee798ebcd8781f04a18fbbab7b2fd (patch) | |
| tree | c97e2147bd52e1e948f51876dae2e0d4253dbe1b | |
| parent | 5bae6459ff6649fdc622b0c4f2a8ee93865197e3 (diff) | |
| download | mruby-075aa3eeaa9ee798ebcd8781f04a18fbbab7b2fd.tar.gz mruby-075aa3eeaa9ee798ebcd8781f04a18fbbab7b2fd.zip | |
don't print garbage entries.
| -rw-r--r-- | src/vm.c | 3 | ||||
| -rw-r--r-- | tools/mruby/mruby.c | 4 |
2 files changed, 5 insertions, 2 deletions
@@ -169,6 +169,9 @@ cipush(mrb_state *mrb) mrb->ci->eidx = eidx; mrb->ci->ridx = ridx; mrb->ci->env = 0; + if (mrb->ci + 1 != mrb->ciend) { + mrb->ci[1].mid = 0; + } return mrb->ci; } diff --git a/tools/mruby/mruby.c b/tools/mruby/mruby.c index 94fddf4c7..2037ee2a8 100644 --- a/tools/mruby/mruby.c +++ b/tools/mruby/mruby.c @@ -170,9 +170,9 @@ showcallinfo(mrb_state *mrb) int i; printf("trace:\n"); - for (i = 0; &mrb->cibase[i] < mrb->ciend; i++) { + for (i = 1; &mrb->cibase[i] < mrb->ciend; i++) { ci = &mrb->cibase[i]; - if (ci->target_class == NULL) + if (ci->mid == 0) break; if (MRB_PROC_CFUNC_P(ci->proc)) |
