diff options
author | nagachika <nagachika@ruby-lang.org> | 2020-07-25 14:17:35 +0900 |
---|---|---|
committer | nagachika <nagachika@ruby-lang.org> | 2020-07-25 14:17:35 +0900 |
commit | 12391cdbe11f3fbeb3b04c30b944139e5bbd9ea6 (patch) | |
tree | 191eb20f865e743825166b5880a8b24c116dfe23 /vm_backtrace.c | |
parent | be359442cb07c25fdc769431ffed3249b9016829 (diff) |
merge revision(s) cbe4f75ef802f13d05f94e42274b65a062bd3666: [Backport #16834]
Fix rb_profile_frame_classpath to handle module singletons
Right now `SomeClass.method` is properly named, but `SomeModule.method`
is displayed as `#<Module:0x000055eb5d95adc8>.method` which makes
profiling annoying.
Diffstat (limited to 'vm_backtrace.c')
-rw-r--r-- | vm_backtrace.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/vm_backtrace.c b/vm_backtrace.c index 2c9649a7c2..f6b4e8e1d6 100644 --- a/vm_backtrace.c +++ b/vm_backtrace.c @@ -1425,7 +1425,7 @@ 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)) + if (!RB_TYPE_P(klass, T_CLASS) && !RB_TYPE_P(klass, T_MODULE)) return rb_sprintf("#<%s:%p>", rb_class2name(rb_obj_class(klass)), (void*)klass); } return rb_class_path(klass); |