diff options
Diffstat (limited to 'misc/lldb_cruby.py')
-rwxr-xr-x | misc/lldb_cruby.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/misc/lldb_cruby.py b/misc/lldb_cruby.py index e7f7003214..c9ed7dd429 100755 --- a/misc/lldb_cruby.py +++ b/misc/lldb_cruby.py @@ -599,9 +599,13 @@ def dump_page_internal(page, target, process, thread, frame, result, debugger, h try: flidx = "%3d" % freelist.index(obj_addr) except ValueError: - flidx = ' ' + flidx = ' -1' - result_str = "%s idx: [%3d] freelist_idx: {%s} Addr: %0#x (flags: %0#x)" % (rb_type(flags, ruby_type_map), page_index, flidx, obj_addr, flags) + if flType == RUBY_T_NONE: + klass = obj.GetChildMemberWithName('klass').GetValueAsUnsigned() + result_str = "%s idx: [%3d] freelist_idx: {%s} Addr: %0#x (flags: %0#x, next: %0#x)" % (rb_type(flags, ruby_type_map), page_index, flidx, obj_addr, flags, klass) + else: + result_str = "%s idx: [%3d] freelist_idx: {%s} Addr: %0#x (flags: %0#x)" % (rb_type(flags, ruby_type_map), page_index, flidx, obj_addr, flags) if highlight == obj_addr: result_str = ' '.join([result_str, "<<<<<"]) |