summaryrefslogtreecommitdiffhomepage
path: root/tools
diff options
context:
space:
mode:
authorTomoyuki Sahara <[email protected]>2012-11-01 14:54:04 +0900
committerTomoyuki Sahara <[email protected]>2012-11-02 10:33:23 +0900
commit80ed166e9f3f293f166086dc70e766272c342950 (patch)
treea6ac0d0c0e7f2bfc225be2a25d545a4836dc713a /tools
parent075aa3eeaa9ee798ebcd8781f04a18fbbab7b2fd (diff)
downloadmruby-80ed166e9f3f293f166086dc70e766272c342950.tar.gz
mruby-80ed166e9f3f293f166086dc70e766272c342950.zip
show all callinfo's.
Diffstat (limited to 'tools')
-rw-r--r--tools/mruby/mruby.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/tools/mruby/mruby.c b/tools/mruby/mruby.c
index 2037ee2a8..5a97adc8a 100644
--- a/tools/mruby/mruby.c
+++ b/tools/mruby/mruby.c
@@ -166,14 +166,14 @@ static void
showcallinfo(mrb_state *mrb)
{
mrb_callinfo *ci;
+ mrb_int ciidx;
const char *filename, *sep;
int i;
printf("trace:\n");
- for (i = 1; &mrb->cibase[i] < mrb->ciend; i++) {
+ ciidx = mrb_fixnum(mrb_obj_iv_get(mrb, mrb->exc, mrb_intern(mrb, "ciidx")));
+ for (i = 1; i <= ciidx; i++) {
ci = &mrb->cibase[i];
- if (ci->mid == 0)
- break;
if (MRB_PROC_CFUNC_P(ci->proc))
filename = "(cfunc)";