aboutsummaryrefslogtreecommitdiffstats
path: root/vm_backtrace.c
diff options
context:
space:
mode:
authortmm1 <tmm1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-10-27 19:17:24 +0000
committertmm1 <tmm1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-10-27 19:17:24 +0000
commit5b529e5a3df75df05f790ff18275ed9dacf5bdd4 (patch)
treed6f1fc829215cbfedc195acdddbcec19dac83054 /vm_backtrace.c
parentbe16693f942222165335c6ef75295337d20d41db (diff)
downloadruby-5b529e5a3df75df05f790ff18275ed9dacf5bdd4.tar.gz
* vm_backtrace.c (rb_profile_frame_classpath): handle singleton
methods defined directly on an object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_backtrace.c')
-rw-r--r--vm_backtrace.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/vm_backtrace.c b/vm_backtrace.c
index 4a0cc304b2..279a94e49c 100644
--- a/vm_backtrace.c
+++ b/vm_backtrace.c
@@ -1297,6 +1297,8 @@ rb_profile_frame_classpath(VALUE frame)
}
else if (FL_TEST(klass, FL_SINGLETON)) {
klass = rb_ivar_get(klass, id__attached__);
+ if (!RB_TYPE_P(klass, T_CLASS))
+ return rb_inspect(klass);
}
return rb_class_path(klass);
}