8000 add debugging 3 · python/cpython@f33eae2 · GitHub
[go: up one dir, main page]

Skip to content

Commit f33eae2

Browse files
committed
add debugging 3
1 parent 916e8b7 commit f33eae2

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

Modules/_testexternalinspection.c

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -712,8 +712,20 @@ parse_task_name(
712712
return PyUnicode_FromFormat("Task-%d", res);
713713
}
714714

715-
if(!(flags & Py_TPFLAGS_UNICODE_SUBCLASS)) {
716-
return PyUnicode_FromString("????");
715+
if(!(0 & flags & Py_TPFLAGS_UNICODE_SUBCLASS)) {
716+
uintptr_t tp_name_ptr;
717+
718+
read_ptr(
719+
pid,
720+
(uintptr_t)task_name_obj.ob_type + offsets->type_object.tp_name,
721+
&tp_name_ptr
722+
);
723+
724+
char tp_name[16];
725+
read_memory(pid, tp_name_ptr, 16, tp_name);
726+
727+
PyErr_Format(PyExc_RuntimeError, "Task name is neither a string nor a long: %s", tp_name);
728+
return NULL;
717729
}
718730

719731
return read_py_str(

0 commit comments

Comments
 (0)
0